<grammar xmlns="http://relaxng.org/ns/structure/1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ssml="http://www.w3.org/2001/10/synthesis" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns:zrng="http://www.daisy.org/ns/rng/annotations" xmlns:its="http://www.w3.org/2005/11/its" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:sel="http://www.daisy.org/ns/z3998/authoring/features/select/" xmlns:xforms="http://www.w3.org/2002/xforms/" xmlns:i="http://www.daisy.org/ns/z3998/authoring/xforms/instance/" xmlns:rend="http://www.daisy.org/ns/z3998/authoring/features/rend/" xmlns:d="http://www.daisy.org/ns/z3998/authoring/features/description/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:z="http://www.daisy.org/ns/z3998/annotations/#" xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:db="http://docbook.org/ns/docbook" ns="http://www.daisy.org/ns/z3998/authoring/"> <info xmlns="http://docbook.org/ns/docbook" xml:lang="en"> <title>The book schema </title> <annotation annotates="/"> <para>This driver file represents the RelaxNG implementation of the Z39.98-2012 Book Profile, and provides the schematic means of validating conformant documents. </para> <para>More information about this module is available at http://www.daisy.org/z3998/2012/auth/cm/#z3998.book.module</para> </annotation> <author xmlns:x="http://www.w3.org/1999/xhtml"> <personname>Markus Gylling</personname> <email>mgylling@daisy.org</email> </author> <legalnotice xmlns:x="http://www.w3.org/1999/xhtml"> <para>This module is licensed under a Creative Commons Attribution 3.0 license, a copy of which is available at <link xlink:href="http://creativecommons.org/licenses/by/3.0/">http://creativecommons.org/licenses/by/3.0/</link> </para> <para>For complete licensing information, please refer to the LICENSE file that came with this distribution, a copy of which is also available from the DAISY web site at <link xlink:href="http://www.daisy.org">www.daisy.org</link> </para> </legalnotice> <copyright xmlns:x="http://www.w3.org/1999/xhtml"> <year>2009</year> <year>2010</year> <year>2011</year> <year>2012</year> <holder>DAISY Consortium</holder> </copyright> <revhistory xmlns:x="http://www.w3.org/1999/xhtml"> <revision> <date>2012-12-19</date> <authorinitials>MGy</authorinitials> <revdescription> <para> Initial version. </para> <para> This revision history only reflects changes to the driver file, not to any of the modules included in it. </para> </revdescription> </revision> </revhistory> </info> <start> <ref name="z3998.document"/> </start> <define name="z3998.document"> <element name="document" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The document element is the root element of all Z39.98-AI Profiles. The document element must include an xmlns attribute declaring the Z39.98-AI Core namespace and an xml.lang attribute specifying the language of the document. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <ref name="xml.lang.attrib"/> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="rdfa.prefix.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <ref name="z3998.head"/> <ref name="z3998.body"/> </element> </define> <define name="z3998.head"> <element name="head" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The head element contains meta information about the complete or partial document contained in the enclosing document . The meta information in the head element is not document content in the context of Z39.98-AI documents, but may be used for display and other purposes when rendering documents into alternate formats. Refer to Document metadata for the normative specification of required metadata in head. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.meta"/> <ref name="z3998.description"/> <ref name="z3998.expansion"/> <ref name="z3998.definition"/> <ref name="ssml.lexicon"/> <ref name="xforms.model"/> </choice> </oneOrMore> </element> </define> <define name="z3998.body"> <element name="body" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The body element contains the complete or partial content of the enclosing document . </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <choice> <empty/> <ref name="z3998.cover"/> </choice> </optional> <ref name="z3998.frontmatter"/> <ref name="z3998.bodymatter"/> <optional> <ref name="z3998.backmatter"/> </optional> </element> </define> <define name="z3998.meta"> <element name="meta" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The meta element expresses metadata information about the document, a document fragment or an external resource associated with the document. The meta element accepts attributes from the RDFa attributes collection for capturing the metadata information. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <choice> <group> <ref name="rdfa.rel.attrib"/> <ref name="rdfa.resource.attrib"/> <zeroOrMore> <ref name="z3998.meta"/> </zeroOrMore> </group> <group> <ref name="rdfa.rev.attrib"/> <ref name="rdfa.resource.attrib"/> <zeroOrMore> <ref name="z3998.meta"/> </zeroOrMore> </group> <group> <ref name="rdfa.property.attrib"/> <ref name="rdfa.content.attrib"/> <zeroOrMore> <ref name="z3998.meta"/> </zeroOrMore> </group> <group> <ref name="rdfa.about.attrib"/> <ref name="rdfa.property.attrib"/> <ref name="rdfa.content.attrib"/> <zeroOrMore> <ref name="z3998.meta"/> </zeroOrMore> </group> <group> <ref name="rdfa.about.attrib"/> <ref name="rdfa.typeof.attrib"/> <ref name="rdfa.content.attrib"/> <zeroOrMore> <ref name="z3998.meta"/> </zeroOrMore> </group> <group> <ref name="rdfa.property.attrib"/> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </group> <group> <ref name="rdfa.about.attrib"/> <ref name="rdfa.property.attrib"/> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </group> <group> <ref name="rdfa.about.attrib"/> <ref name="rdfa.typeof.attrib"/> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </group> <group> <ref name="rdfa.typeof.attrib"/> <zeroOrMore> <ref name="z3998.meta"/> </zeroOrMore> </group> <ref name="rdfa.typeof.attrib"/> </choice> <sch:rule context="default:meta[@content]"> <sch:assert test="string-length(normalize-space(@content)) > 0">The meta content attribute must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.ref"> <element name="ref" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The ref element represents a reference to an internal or external entity. The referenced entity is not required to be resolvable or includable in a processing or rendering context: the ref element may point to conceptual or physical items. The ref element may employ attributes from the xlink attributes collection to specify the nature of the hyperlink, including or excluding expressions of link activation behavior. IDREF link relationships may also be established using the ref attribute, but not in conjunction with the xlink attributes collection. </a:documentation> <sch:rule context="default:ref"> <sch:report test="descendant::default:ref">The {ref} element must not contain descendant {ref} elements.</sch:report> <sch:assert test="normalize-space(.) or *">The ref element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> <choice> <optional> <interleave> <ref name="xlink.href.attrib"/> <optional> <ref name="xlink.type.attrib"/> </optional> <optional> <ref name="xlink.title.attrib"/> </optional> <optional> <ref name="xlink.show.attrib"/> </optional> <optional> <ref name="xlink.actuate.attrib"/> </optional> </interleave> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> </choice> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.span"/> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </element> </define> <define name="z3998.ref.attrib"> <attribute name="ref" ns=""> <a:documentation>The ref attribute provides a generic mechanism to establish an association between the current element and one or more other elements in the document scope. The ref attribute must contain one or more space separated references to the IDs of the associated elements. Elements adopting the ref attribute may express constraints on the nature of the referenced elements. </a:documentation> <ref name="IDREFS.datatype"/> <sch:rule context="*[@ref][namespace-uri()='http://www.daisy.org/ns/z3998/authoring/']"> <sch:assert test="every $id in tokenize(@ref, '\s+') satisfies count(index-of(tokenize(@ref, '\s+'), $id)) = 1">The ref attribute must not reference the same ID multiple times. </sch:assert> <sch:assert test="every $id in tokenize(@ref, '\s+') satisfies //*[@xml:id = $id]">Each IDREF in the ref attribute must reference the ID of another element in the document. </sch:assert> <sch:assert test="every $id in tokenize(@ref, '\s+') satisfies not(current() is //*[@xml:id eq $id])">Elements carrying a ref attribute must not reference themselves. </sch:assert> </sch:rule> </attribute> </define> <define name="z3998.src.attrib"> <attribute name="src" ns=""> <a:documentation>The src attribute contains a URI reference to an external resource to embed in the document, in place of the current element. Only references to resources that conform to one of the types in the srctype attribute enumeration are allowed. </a:documentation> <ref name="URI.datatype"/> </attribute> </define> <define name="z3998.srctype.attrib"> <attribute name="srctype" ns=""> <a:documentation>The srctype attribute contains a MediaType expression that identifies the type of resource referenced from the src attribute. All Z39.98-AI profiles must allow the media types image/png , image/jpeg and image/bmp. These three image types are jointly referred to as the "core image types". Z39.98-AI features may extend this enumeration to support additional media types. If the srctype attribute is not specified, processing agents must dereference the resource in the src attribute to identify its media type. </a:documentation> <choice> <value type="token" datatypeLibrary="">image/png</value> <a:documentation>The referenced resource is a PNG image . </a:documentation> <value type="token" datatypeLibrary="">image/jpeg</value> <a:documentation>The referenced resource is a JPEG image . </a:documentation> <value type="token" datatypeLibrary="">image/bmp</value> <a:documentation>The referenced resource is a BMP image. </a:documentation> <value type="token" datatypeLibrary="">image/svg+xml</value> </choice> </attribute> </define> <define name="z3998.continuation.attrib"> <attribute name="continuation" ns=""> <a:documentation>The continuation attribute provides a generic mechanism to establish a logical continuation of the current element cross one or more other elements in the document scope. The continuation attribute must contain one or more space separated references to the IDs of the associated elements. Note that the element that carries the continuation attribute must not be referenced in this list. The order in which the references appear in the attribute value is not significant (i.e., the reference order need not match the document order of the referenced elements). Only elements with the same QName as the parent element of the attribute can be referenced (e.g., a paragraph cannot list a table as a continuation). Additionally, only elements following the current element in the document order may be referenced as continuations. Elements that are referenced as continuations must not have continuation attributes themselves. Logical connections allow for special formatting of elements when generating outputs (to establish the connection between emphasis that continues across multiple paragraphs for braille formatting, for example). When the continuation attribute has been attached to an element, all formatting instructions that apply to that element also apply to all the elements referenced in the attribute. Formatting instructions on the logical siblings, however, do not cascade. A processing agent that does not recognize logical connections must be able to process each individual element in the continuation without requiring special knowledge of the elements that came before (i.e., inheritance of formatting cannot be assumed). </a:documentation> <sch:rule context="*[@continuation]"> <sch:assert test="every $id in tokenize(@continuation, '\s+') satisfies count(index-of(tokenize(@continuation, '\s+'), $id)) = 1">The continuation attribute must not reference the same ID multiple times. </sch:assert> <sch:assert test="every $id in tokenize(@continuation, '\s+') satisfies current() << //*[@xml:id eq $id]">Elements referenced by a continuation attribute must be located after the referencing element (i.e., in document order). </sch:assert> <sch:assert test="every $id in tokenize(@continuation, '\s+') satisfies name(//*[@xml:id eq $id]) eq name(current())">Elements referenced by a continuation attribute must have the same QName as the referencing element. </sch:assert> <sch:assert test="every $id in tokenize(@continuation, '\s+') satisfies not(current() is //*[@xml:id eq $id])">Elements carrying a continuation attribute must not reference themselves. </sch:assert> </sch:rule> <ref name="IDREFS.datatype"/> </attribute> </define> <define name="z3998.section"> <element name="section" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The section element represents a structural division of a document. A structural division is defined as any grouping of content that has significance to the hierarchy of the document, which can include major divisions like parts, sections, chapters, etc. or minor divisions like author biographies. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.depth.attrib"/> </optional> <choice> <group> <interleave> <ref name="z3998.h"/> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </group> <group> <interleave> <optional> <ref name="z3998.h"/> </optional> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.toc.block"/> <ref name="z3998.glossary.block"/> </choice> </oneOrMore> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> <interleave> <zeroOrMore> <choice> <ref name="z3998.section"/> <ref name="z3998.aside.section"/> <ref name="z3998.bibliography"/> <ref name="z3998.glossary"/> </choice> </zeroOrMore> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </group> <group> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> <interleave> <oneOrMore> <choice> <ref name="z3998.section"/> <ref name="z3998.aside.section"/> <ref name="z3998.bibliography"/> <ref name="z3998.glossary"/> </choice> </oneOrMore> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </group> </choice> </element> </define> <define name="z3998.h"> <element name="h" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The h element represents a structural heading. The h element is strongly associated with the section element and its specializations. Each section typically allows zero or one h element child. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <oneOrMore> <choice> <oneOrMore> <choice> <ref name="z3998.span"/> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <ref name="z3998.hpart"/> </choice> </oneOrMore> <sch:rule context="default:h"> <sch:assert test="normalize-space(.) or *">The h element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.hpart"> <element name="hpart" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The hpart element represents a segment of a structural heading. The hpart element is typically used to separate numeric identifiers from headings or to separate segments of headings broken onto separate lines. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.span"/> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:hpart"> <sch:assert test="normalize-space(.) or *">The hpart element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.hd"> <element name="hd" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The hd element represents a free-floating heading that is not associated with the hierarchical structure of the document. The ref attribute may be used to associate an hd element with a construct that it acts as a heading for. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.span"/> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:hd"> <sch:assert test="normalize-space(.) or *">The hd element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.block"> <element name="block" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The block element establishes an association between a group of elements. The block element differs and is subordinate to the section element in that it is not used to represent the structural outline of a document. A block only establishes a general association, and is a semantically neutral element by default. Attributes attached to the block reflect a general commonality amongst the children: a role attribute can be attached to express the semantic nature of the grouping; a class attribute to establish common formatting; an xml.lang attribute to indicate the language of the elements; and so forth. If the children of the block have a strong association to a single element, the block.associate attribute can be used to make this relationship explicit (e.g., in a figure, that all children are connected to the image). </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.block.associate.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:block"> <sch:assert test="normalize-space(.) or *">The block element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.block.associate.attrib"> <attribute name="associate" ns=""> <a:documentation>The associate attribute identifies the child element of a block to which all other children are bound. The associate attribute takes a single IDREF that must point to one of its children as a value. All the other children assume an implict reference to the element through this value, allowing the ref attribute to be omitted from them. </a:documentation> <ref name="IDREF.datatype"/> <sch:rule context="*[@associate]"> <sch:assert test="child::*[@xml:id = current()/@associate]">The IDREF in the associate attribute must reference the ID of a child element. </sch:assert> </sch:rule> </attribute> </define> <define name="z3998.p"> <element name="p" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The p element represents a paragraph of text consisting of one or several sentences. The class attribute together with a CSS stylesheet should be used to retain any formatting information specific to a paragraph, such as first line indenting. When print layout has to be strictly followed in converting a document to electronic format, paragraphs may be split by other elements such as full page images. Refer to the continuation attribute for more information on how to indicate that two p elements actually constitute a single whole. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:p"> <sch:assert test="normalize-space(.) or *">The p element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.transition"> <element name="transition" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The transition element represents context changes and other shifts in the narrative flow or content of a document. The shift represented by a transition does not infer structural meaning on the elements that precede or follow it (see the section element). A typical example of a transition in print documents is a spaced gap between paragraphs, which may include centered asterisks or other glyphs (often referred to as a space break). The Content Rendition feature's symbol attribute can be used to represent a character marker associated with the transition, and the src attribute can be used to reference an image. If both attributes are omitted, the transition is treated as a whitespace gap. </a:documentation> <interleave> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <choice> <ref name="z3998.rend.symbol.attrib"/> <group> <ref name="z3998.src.attrib"/> <optional> <ref name="z3998.srctype.attrib"/> </optional> </group> </choice> </optional> </interleave> </element> </define> <define name="z3998.list"> <element name="list" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The list element represents a simple list of items, either ordered or unordered. The optional type attribute specifies the HTML-style ordered and unordered nature of the list. By default, an unordered list is prefixed by bullets and an ordered list by numeric values. To change this behavior, refer to the Content Rendition feature's prefix attributes. If the type attribute is omitted, then there is no default formatting. The list element is not intended to structure semantically meaningful sets of entries as found in indexes, bibliographies and glossaries. </a:documentation> <interleave> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <choice> <interleave> <ref name="z3998.list.type.ordered.attrib"/> <optional> <ref name="z3998.list.start.attrib"/> </optional> <optional> <ref name="z3998.rend.list.ordered.prefix.attrib"/> </optional> </interleave> <interleave> <ref name="z3998.list.type.unordered.attrib"/> <optional> <ref name="z3998.rend.list.unordered.prefix.attrib"/> </optional> </interleave> <empty/> </choice> <optional> <ref name="z3998.depth.attrib"/> </optional> </interleave> <interleave> <oneOrMore> <ref name="z3998.list.item.block"/> </oneOrMore> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </element> </define> <define name="z3998.list.type.unordered.attrib" combine="interleave"> <attribute name="type" ns=""> <a:documentation>Specifies whether the items in the list are ordered or unordered. </a:documentation> <value type="token" datatypeLibrary="">unordered</value> <a:documentation>The order of the items in this list is insignificant. </a:documentation> </attribute> </define> <define name="z3998.list.type.ordered.attrib" combine="interleave"> <attribute name="type" ns=""> <a:documentation>Specifies whether the items in the list are ordered or unordered. </a:documentation> <value type="token" datatypeLibrary="">ordered</value> <a:documentation>The order of the items in this list is significant. </a:documentation> </attribute> </define> <define name="z3998.list.start.attrib"> <attribute name="start" ns=""> <a:documentation>The start attribute specifies the ordinal value for the first list item's prefix. If omitted, the implicit value 1 is assumed. This attribute is only valid when used with ordered lists (as defined by the presence and value of the type attribute). </a:documentation> <ref name="Integer.datatype"/> </attribute> </define> <define name="z3998.list.item.block"> <element name="item" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The item element represents a single item in a list. The number or glyph that appears before the item is typically controlled by the attributes specified on the parent list element together with the number of preceding items. The Content Rendition feature's prefix attribute allows this default behaviour to be overridden for individual items, however. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.rend.list.item.prefix.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:item"> <sch:assert test="normalize-space(.) or *">The item element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.table"> <element name="table" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The table element represents a single instance of tabular data arranged in rows and columns. A table may consist of one or more tr elements or may be divided into table.thead , table.tbody and table.tfoot divisions. A table may contain one or more table.colgroup elements, for expressing common column formatting and properties. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <zeroOrMore> <ref name="z3998.table.colgroup"/> </zeroOrMore> <choice> <group> <optional> <ref name="z3998.table.thead"/> </optional> <oneOrMore> <ref name="z3998.table.tbody"/> </oneOrMore> <optional> <ref name="z3998.table.tfoot"/> </optional> </group> <oneOrMore> <interleave> <ref name="z3998.table.tr.tr"/> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </oneOrMore> </choice> </element> </define> <define name="z3998.table.colgroup"> <element name="colgroup" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The colgroup element allows a set of properties to be defined for the cells in one or more table columns. The colgroup can define a common set of properties for one or more columns using the table.span attribute, in which case it must be an empty element. To specify different properties for different columns, the colgroup must contain one or more table.col elements with the properties for those columns. A colgroup must not contain both a span attribute and child col elements. </a:documentation> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <choice> <ref name="z3998.table.span.attrib"/> <oneOrMore> <ref name="z3998.table.col"/> </oneOrMore> </choice> </element> </define> <define name="z3998.table.span.attrib"> <attribute name="span" ns=""> <a:documentation>The span attribute specifies the number of columns the properties defined in a table.colgroup or table.col apply to. If a colgroup element contains child col elements, the span is determined automatically from the number of child col elements and any respective span values they define. If omitted, the implicit value 1 is assumed. </a:documentation> <ref name="PositiveInteger.datatype"/> </attribute> </define> <define name="z3998.table.col"> <element name="col" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The col element allows a set of properties to be defined for the cells in one or more table columns. The optional table.span attribute indicates the number of adjoining columns to which the properties apply. </a:documentation> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="z3998.table.span.attrib"/> </optional> </element> </define> <define name="z3998.table.thead"> <element name="thead" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The thead element represents the collection of table header rows. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <oneOrMore> <interleave> <ref name="z3998.table.tr.tr"/> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </oneOrMore> </element> </define> <define name="z3998.table.tfoot"> <element name="tfoot" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The tfoot element represents the collection of table footer rows. Note that contrary to the XHTML Modularization 1.1 tables module tfoot element , this element is placed following the tbody element. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <oneOrMore> <interleave> <ref name="z3998.table.tr.tr"/> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </oneOrMore> </element> </define> <define name="z3998.table.tbody"> <element name="tbody" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The tbody element represents a collection of table body rows. Multiple tbody elements are allowed to enable representation of sections of rows. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <oneOrMore> <interleave> <ref name="z3998.table.tr.tr"/> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </oneOrMore> </element> </define> <define name="z3998.table.th"> <element name="th" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The th element represents a single table cell containing header information. The optional table.scope attribute can be used to express the column(s) or row(s) to which the header applies. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.table.colspan.attrib"/> </optional> <optional> <ref name="z3998.table.rowspan.attrib"/> </optional> <optional> <ref name="z3998.table.headers.attrib"/> </optional> <optional> <ref name="z3998.table.scope.attrib"/> </optional> <optional> <ref name="z3998.table.th.abbr.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> </element> </define> <define name="z3998.table.th.abbr.attrib"> <attribute name="abbr" ns=""> <a:documentation>The abbr attribute specifies an abbreviated header value. </a:documentation> <text/> </attribute> </define> <define name="z3998.table.td"> <element name="td" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The td element represents a single table cell. The optional table.colspan and table.rowspan attributes can be used to specify that a column extends across or down more than one cell, respectively. The optional table.scope attribute can be used to express that the current cell represents a header for columns(s) or row(s) defined by the attribute's value. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.table.colspan.attrib"/> </optional> <optional> <ref name="z3998.table.rowspan.attrib"/> </optional> <optional> <ref name="z3998.table.headers.attrib"/> </optional> <optional> <ref name="z3998.table.scope.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> <ref name="z3998.ln"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> </element> </define> <define name="z3998.table.colspan.attrib"> <attribute name="colspan" ns=""> <a:documentation>The colspan attribute specifies the number of columns spanned by the current cell. The implicit value of this attribute is 1. The value 0 indicates that the cell spans all columns from the current column to the last column of the table.colgroup in which the cell is defined. </a:documentation> <ref name="NonNegativeInteger.datatype"/> </attribute> </define> <define name="z3998.table.rowspan.attrib"> <attribute name="rowspan" ns=""> <a:documentation>The rowspan attribute specifies the number of rows spanned by the current cell. The implicit value of this attribute is 1. The value 0 indicates that the cell spans all rows from the current row to the last row of the current table section (rowgroup) in which the cell is defined (where the table.thead , table.tbody , and table.tfoot elements are considered rowgroups). </a:documentation> <ref name="NonNegativeInteger.datatype"/> </attribute> </define> <define name="z3998.table.scope.attrib"> <attribute name="scope" ns=""> <a:documentation>The scope attribute specifies the set of data cells for which the current header cell provides header information. This attribute may be used in place of the table.headers attribute, especially for simple tables. </a:documentation> <choice> <value type="token" datatypeLibrary="">row</value> <a:documentation>The current cell provides header information for the rest of the row that contains it. </a:documentation> <value type="token" datatypeLibrary="">col</value> <a:documentation>The current cell provides header information for the rest of the column that contains it. </a:documentation> <value type="token" datatypeLibrary="">rowgroup</value> <a:documentation>The header cell provides header information for the rest of the row group that contains it. </a:documentation> <value type="token" datatypeLibrary="">colgroup</value> <a:documentation>The header cell provides header information for the rest of the column group that contains it. </a:documentation> </choice> </attribute> </define> <define name="z3998.table.headers.attrib"> <attribute name="headers" ns=""> <a:documentation>The headers attribute specifies the list of header cells that provide header information for the current data cell. This attribute requires a space separated list of valid ID references that resolves to th elements. </a:documentation> <ref name="IDREFS.datatype"/> <sch:rule context="default:*[@headers]"> <sch:assert test="every $idref in tokenize(current()/@headers,'\s+') satisfies ancestor::default:table[not(descendant::default:table)]//default:th[@xml:id=$idref]">The headers attribute must resolve to a th in the current table. </sch:assert> </sch:rule> </attribute> </define> <define name="z3998.code.block"> <element name="code" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The code element is intended for general instances of code as found in works of fiction and similar non-technical documents, which includes computer programming code, commands and command input/output as well as representations of numeric and text coding systems, such as Morse code. For computer programming books, manuals and specifications, specializing the code element or using a computer markup feature is recommended. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <choice> <group> <oneOrMore> <choice> <ref name="z3998.code.lngroup"/> <ref name="z3998.code.ln"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </group> <group> <oneOrMore> <choice> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </group> </choice> <sch:rule context="default:code"> <sch:assert test="normalize-space(.) or *">The code element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.code.lngroup"> <element name="lngroup" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The lngroup element for code represents a grouping of ln code elements. Lines of code may be grouped to show a section of a coded message, a computer program, methods within a program, to separate programs from sample input/output, etc. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <interleave> <oneOrMore> <ref name="z3998.code.ln"/> </oneOrMore> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </element> </define> <define name="z3998.code.ln"> <element name="ln" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The ln element for the code element represents a single line of code. The lnum element can be added at the start of the ln for code examples that include line numbers. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <interleave> <optional> <ref name="z3998.lnum"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </interleave> <sch:rule context="default:ln"> <sch:assert test="not(descendant::default:ln)">The ln element must not contain descendant ln elements. </sch:assert> <sch:assert test="normalize-space(.) or *">The ln element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.code.phrase"> <element name="code" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The code element is intended for general instances of code as found in works of fiction and similar non-technical documents, which includes computer programming code, commands and command input/output as well as representations of numeric and text coding systems, such as Morse code. For computer programming books, manuals and specifications, specializing the code element or using a computer markup feature is recommended. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:code"> <sch:assert test="normalize-space(.) or *">The code element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.quote.block"> <element name="quote" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The quote element represents a quotation from a real or fictitious source. When citing the source of a quotation, the citation must be explicitly linked to the quote by means of the ref attribute. If a quote element contains only a single child citation element, and the citation does not contain a ref attribute or child ref element, the association between the two elements is implied. If a quote does not contain a citation, it can still be linked to the work it is cited from by attaching a ref attribute referencing an entry in a bibliography , for example. To reference other resources, including resources external to the current document, the xlink.href attribute must be used. The role attribute optionally expresses the semantic nature of the quote. The role value epigraph, for example, indicates the quoted passage or verse represents an epigraph for the document or section. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <choice> <ref name="z3998.ref.attrib"/> <interleave> <ref name="xlink.href.attrib"/> <optional> <ref name="xlink.type.attrib"/> </optional> <optional> <ref name="xlink.title.attrib"/> </optional> <optional> <ref name="xlink.show.attrib"/> </optional> <optional> <ref name="xlink.actuate.attrib"/> </optional> </interleave> </choice> </optional> <choice> <oneOrMore> <choice> <a:documentation>specialize the block model to allow linegroups and lines </a:documentation> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> <ref name="z3998.lngroup"/> <ref name="z3998.ln"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:quote"> <sch:assert test="normalize-space(.) or *">The quote element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.quote.phrase"> <element name="quote" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The quote element represents a quotation from a real or fictitious source. When citing the source of a quotation, the citation must be explicitly linked to the quote by means of the ref attribute. If a quote element contains only a single child citation element, and the citation does not contain a ref attribute or child ref element, the association between the two elements is implied. If a quote does not contain a citation, it can still be linked to the work it is cited from by attaching a ref attribute referencing an entry in a bibliography , for example. To reference other resources, including resources external to the current document, the xlink.href attribute must be used. The role attribute optionally expresses the semantic nature of the quote. The role value epigraph, for example, indicates the quoted passage or verse represents an epigraph for the document or section. Quotation marks should be included within the element if they must be retained in the file. The use of CSS for appending these characters is recommended, however, for the flexibility it allows to change the characters depending on the desired output. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <optional> <choice> <ref name="z3998.ref.attrib"/> <interleave> <ref name="xlink.href.attrib"/> <optional> <ref name="xlink.type.attrib"/> </optional> <optional> <ref name="xlink.title.attrib"/> </optional> <optional> <ref name="xlink.show.attrib"/> </optional> <optional> <ref name="xlink.actuate.attrib"/> </optional> </interleave> </choice> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:quote"> <sch:assert test="normalize-space(.) or *">The quote element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.citation.block"> <element name="citation" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The citation element represents an author's acknowledgment of the original author and/or work of a directly or indirectly borrowed idea, quote or other resource. Citations typically occur in conjunction with epigraphs, quotes, illustrations, charts and diagrams. The Block variant is an adaptation for use where the citation is offset from the quoted material. The optional ref attribute on the citation element is used to establish an explicit association between the citation and the passage or resource it references; the placement of the citation does not, by default, imply an association with any element in the document. Some elements do provide a mechanism for implied relationships, however (see the quote element, for example). When adding citations, refer to the documentation for the element the citation is being attached to for more information. A citation can also be linked to the work it cites by including a child ref element. A ref attribute can be attached to the nested ref element to reference a work in the current document's bibliography , for example. To reference other resources, including resources external to the current document, the xlink.href attribute must be used instead. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <choice> <ref name="z3998.ref.attrib"/> <interleave> <ref name="xlink.href.attrib"/> <optional> <ref name="xlink.type.attrib"/> </optional> <optional> <ref name="xlink.title.attrib"/> </optional> <optional> <ref name="xlink.show.attrib"/> </optional> <optional> <ref name="xlink.actuate.attrib"/> </optional> </interleave> </choice> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:citation"> <sch:assert test="normalize-space(.) or *">The citation element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> <sch:rule context="default:citation//default:ref[@ref]"> <sch:assert test="some $entry in //default:bibliography/default:entry satisfies current()/@ref eq $entry/@xml:id ">The ref attribute on the ref element must refer to an entry in a bibliography when nested inside a citation element. </sch:assert> </sch:rule> </element> </define> <define name="z3998.citation"> <element name="citation" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The citation element represents an author's acknowledgment of the original author and/or work of a directly or indirectly borrowed idea, quote or other resource. Citations typically occur in conjunction with epigraphs, quotes, illustrations, charts and diagrams. The Phrase variant is an adaptation for use where citations are included inline with the quoted material. The optional ref attribute on the citation element is used to establish an explicit association between the citation and the passage or resource it references; the placement of the citation does not, by default, imply an association with any element in the document. Some elements do provide a mechanism for implied relationships, however (see the quote element, for example). When adding citations, refer to the documentation for the element the citation is being attached to for more information. A citation can also be linked to the work it cites by including a child ref element. A ref attribute can be attached to the nested ref element to reference a work in the current document's bibliography , for example. To reference other resources, including resources external to the current document, the xlink.href attribute must be used instead. Parentheses, brackets and other enclosing characters should be included within the citation element if they must be retained in the file. The use of CSS for appending these characters is recommended, however, for the flexibility it allows to change the characters depending on the desired output. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <optional> <choice> <ref name="z3998.ref.attrib"/> <interleave> <ref name="xlink.href.attrib"/> <optional> <ref name="xlink.type.attrib"/> </optional> <optional> <ref name="xlink.title.attrib"/> </optional> <optional> <ref name="xlink.show.attrib"/> </optional> <optional> <ref name="xlink.actuate.attrib"/> </optional> </interleave> </choice> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:citation"> <sch:assert test="normalize-space(.) or *">The citation element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> <sch:rule context="default:citation//default:ref[@ref]"> <sch:assert test="some $entry in //default:bibliography/default:entry satisfies current()/@ref eq $entry/@xml:id ">The ref attribute on the ref element must refer to an entry in a bibliography when nested inside a citation element. </sch:assert> </sch:rule> </element> </define> <define name="z3998.object.block"> <element name="object" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The object element contains a reference to an external resource, such as a graphic or video. The Block variant is an adaptation for use embedding objects that are intended to be offset from any surrounding block elements. The referenced resource may be an image, video, XML text, or other content, but its media type must be supported by the current profile and features in use. The optional srctype attribute carries an enumeration of the allowed media types. The formal behavior of the object element is defined by XHTML 1.1 . </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <group> <ref name="z3998.src.attrib"/> <optional> <ref name="z3998.srctype.attrib"/> </optional> </group> <choice> <empty/> <ref name="z3998.description"/> <group> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> </choice> </oneOrMore> </group> <group> <oneOrMore> <choice> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <text/> </choice> </oneOrMore> </group> </choice> <sch:rule context="default:object"> <sch:report test="descendant::*[namespace-uri(.) = 'http://www.w3.org/1998/Math/MathML']">The {object} element must not contain descendant elements from the MathML feature grammar.</sch:report> </sch:rule> </element> </define> <define name="z3998.object.phrase"> <element name="object" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The object element contains a reference to an external resource, such as a graphic or video. The Phrase variant is an adaption for use embedding objects in phrasal constructs. The referenced resource may be an image, video, XML text, or other content, but its media type must be supported by the current profile and features in use. The optional srctype attribute carries an enumeration of the allowed media types. The formal behavior of the object element is defined by XHTML 1.1 . </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <group> <ref name="z3998.src.attrib"/> <optional> <ref name="z3998.srctype.attrib"/> </optional> </group> <choice> <empty/> <ref name="z3998.description.phrase"/> <group> <oneOrMore> <choice> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <text/> </choice> </oneOrMore> </group> </choice> <sch:rule context="default:object"> <sch:report test="descendant::*[namespace-uri(.) = 'http://www.w3.org/1998/Math/MathML']">The {object} element must not contain descendant elements from the MathML feature grammar.</sch:report> </sch:rule> </element> </define> <define name="z3998.object.text"> <element name="object" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The object element contains a reference to an external resource, such as a graphic or video. The Text variant is an adaption for use representing objects at the character level. The referenced resource may be an image, video, XML text, or other content, but its media type must be supported by the current profile and features in use. The optional srctype attribute carries an enumeration of the allowed media types. The formal behavior of the object element is defined by XHTML 1.1 . </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <group> <ref name="z3998.src.attrib"/> <optional> <ref name="z3998.srctype.attrib"/> </optional> </group> <choice> <empty/> <ref name="z3998.description.text"/> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:object"> <sch:report test="descendant::*[namespace-uri(.) = 'http://www.w3.org/1998/Math/MathML']">The {object} element must not contain descendant elements from the MathML feature grammar.</sch:report> </sch:rule> </element> </define> <define name="z3998.address"> <element name="address" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The address element represents both physical locations (postal, geographic, etc.) and virtual locations (http, email, ftp, etc.). The Block variant is an adaptation for use marking multi-line addresses (e.g., postal addresses). The role attribute optionally expresses the type of address. If omitted, the implicit value postal is assumed. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.address.role.attrib"/> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> <optional> <interleave> <ref name="xlink.href.attrib"/> <optional> <ref name="xlink.type.attrib"/> </optional> <optional> <ref name="xlink.title.attrib"/> </optional> <optional> <ref name="xlink.show.attrib"/> </optional> <optional> <ref name="xlink.actuate.attrib"/> </optional> </interleave> </optional> <oneOrMore> <choice> <ref name="z3998.lngroup"/> <ref name="z3998.ln"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:address"> <sch:assert test="normalize-space(.) or *">The address element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.address.role.attrib"> <attribute name="role" ns=""> <list> <oneOrMore> <choice> <ref name="CURIE.datatype"/> <value type="token" datatypeLibrary="">ip</value> <a:documentation>An internet protocol address. </a:documentation> <value type="token" datatypeLibrary="">email</value> <a:documentation>An email address. </a:documentation> <value type="token" datatypeLibrary="">ftp</value> <a:documentation>A file transfer protocol address. </a:documentation> <value type="token" datatypeLibrary="">postal</value> <a:documentation>A postal or mailing address. </a:documentation> <value type="token" datatypeLibrary="">http</value> <a:documentation>A hypertext transfer protocol address. </a:documentation> <value type="token" datatypeLibrary="">geographic</value> <a:documentation>A positional location, typically expressed by coordinates. </a:documentation> </choice> </oneOrMore> </list> </attribute> </define> <define name="z3998.address.phrase"> <element name="address" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The address element represents both physical locations (postal, geographic, etc.) and virtual locations (http, email, ftp, etc.). The Phrase variant is an adaptation for use for addresses that are embedded within the text flow (typically web and email addresses). The role attribute optionally expresses the type of address. If omitted, the implicit value postal is assumed. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.address.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <optional> <interleave> <ref name="xlink.href.attrib"/> <optional> <ref name="xlink.type.attrib"/> </optional> <optional> <ref name="xlink.title.attrib"/> </optional> <optional> <ref name="xlink.show.attrib"/> </optional> <optional> <ref name="xlink.actuate.attrib"/> </optional> </interleave> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:address"> <sch:assert test="normalize-space(.) or *">The address element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.note"> <element name="note" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The note element represents a single footnote or endnote. The Block variant is an adaptation for use including notes between block elements. Notes provide or reference sources of additional information, or acknowledge the source of a quotation or idea. In printed matter, they are usually distinguishable from annotations by their location either at the bottom of print pages, at the end of sections or in the back matter of a document. Each note is typically referenced by a noteref or prefixed by a page location (when explicit references have been omitted from the text). If the note does not have a referent in a Z39.98-AI document, it must include a ref attribute that references back to the nearest element in the document to the content to which it applies. The role attribute optionally expresses the semantic nature of the note. The value can be either footnote or endnote. If omitted, the implicit value footnote is assumed. When a note is prefixed by a number or symbol, that identifier should be included using the Content Rendition feature's prefix attribute. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> <optional> <ref name="z3998.rend.prefix.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:note"> <sch:assert test="key('noterefs', @xml:id) or id(current()/@ref)">The note element must either be referenced by a noteref or reference another element in the document. </sch:assert> <sch:assert test="normalize-space(.) or *">The note element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.note.phrase"> <element name="note" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The note element represents a single footnote or endnote. The Phrase variant is an adaptation for use including notes inline in phrase contexts. Notes provide or reference sources of additional information, or acknowledge the source of a quotation or idea. In printed matter, they are usually distinguishable from annotations by their location either at the bottom of print pages, at the end of sections or in the back matter of a document. Each note is typically referenced by a noteref or prefixed by a page location (when explicit references have been omitted from the text). If the note does not have a referent in a Z39.98-AI document, it must include a ref attribute that references back to the nearest element in the document to the content to which it applies. The role attribute optionally expresses the semantic nature of the note. The value can be either footnote or endnote. If omitted, the implicit value footnote is assumed. When a note is prefixed by a number or symbol, that identifier should be included using the Content Rendition feature's prefix attribute. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:note"> <sch:assert test="key('noterefs', @xml:id) or id(current()/@ref)">The note element must either be referenced by a noteref or reference another element in the document. </sch:assert> <sch:assert test="normalize-space(.) or *">The note element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.noteref"> <element name="noteref" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The noteref element represents a textual reference to a note . Note references typically appear as superscripted numbers or symbols within the narrative flow but may also appear as linked words, especially in electronic formats. The ref attribute is used to establish the link between the note reference and its associated note. By default, the text content of the noteref represents the link reference and is treated as document content. When superscripted numbers or symbols are used to identify the corresponding note, the noteref.value attribute should be used. The noteref must be an empty element when attaching a value attribute; it it not permitted to include text content and a value attribute. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <ref name="z3998.ref.attrib"/> <optional> <ref name="z3998.noteref.value.attrib"/> </optional> <choice> <empty/> <oneOrMore> <choice> <ref name="z3998.span"/> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:noteref"> <sch:report test="@value and (count(*|text()[normalize-space()]) > 0)">The {value} attribute can only be used on empty {noteref} elements.</sch:report> <sch:report test="not(@value) and (count(*|text()[normalize-space()]) = 0)">A {noteref} element cannot be empty and not include a {value} attribute.</sch:report> <sch:assert test="every $ref in tokenize(current()/@ref, ' +') satisfies key('notes', $ref)">The IDREF(s) in the ref attribute must resolve to note elements. </sch:assert> </sch:rule> <sch:rule context="default:noteref" role="warning"> <sch:report role="warning" test="(count(node()[normalize-space()]) = 1) and child::default:sup">Superscripted referents should be included in a {value} attribute, not as text content.</sch:report> </sch:rule> </element> </define> <define name="z3998.noteref.value.attrib"> <attribute name="value" ns=""> <a:documentation>The noteref value attribute provides the number or symbol that represents the current note reference. The value attribute allows any text string as an identifier. </a:documentation> <ref name="NonEmptyString.datatype"/> </attribute> </define> <define name="z3998.annotation"> <element name="annotation" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The annotation element represents an annotation that an author, editor, publisher, or other individual or agency has added to a document. Unless an annotation element has a role value of temporary, it must reference at least one element in the document using the ref attribute or be referenced by at least one annoref . For annotations that apply to more than one element, use a space-separated list of xml:id values in the ref attribute. The ref attribute identifies the specific element(s) being annotated by referencing their xml:id values. The annotation element should not be used to add descriptions, footnotes or endnotes. Refer to the description and note elements for more information. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.annotation.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> <optional> <ref name="z3998.rend.prefix.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:annotation[not(@role='temporary')]"> <sch:assert test="key('annorefs', @xml:id) or id(current()/@ref)">The annotation element must be referenced by an annoref or reference another element in the document unless it has the role value temporary. </sch:assert> <sch:assert test="normalize-space(.) or *">The annotation element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> <sch:rule context="default:annotation[@role='temporary']" role="warning"> <sch:report test=".">Annotations with a {role} value of {temporary} must be removed prior to document finalization.</sch:report> </sch:rule> </element> </define> <define name="z3998.annotation.phrase"> <element name="annotation" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The annotation element represents an annotation that an author, editor, publisher, or other individual or agency has added to a document. The inline inclusion of annotation elements does not influence the rendering of the annotations or reflect their appearance in a print medium; inlining allows annotations to be included as close to their referenced element as is desired. It is equally valid for Block-layer annotations to reference inline elements. Unless an annotation element has a role value of temporary, it must reference at least one element in the document using the ref attribute or be referenced by at least one annoref . For annotations that apply to more than one element, use a space-separated list of xml:id values in the ref attribute. The ref attribute identifies the specific element(s) being annotated by referencing their xml:id values. The annotation element should not be used to add descriptions, footnotes or endnotes. Refer to the description and note elements for more information. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.annotation.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:annotation[not(@role='temporary')]"> <sch:assert test="key('annorefs', @xml:id) or id(current()/@ref)">The annotation element must be referenced by an annoref or reference another element in the document unless it has the role value temporary. </sch:assert> <sch:assert test="normalize-space(.) or *">The annotation element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> <sch:rule context="default:annotation[@role='temporary']" role="warning"> <sch:report test=".">Annotations with a {role} value of {temporary} must be removed prior to document finalization.</sch:report> </sch:rule> </element> </define> <define name="z3998.annotation.role.attrib"> <attribute name="role" ns=""> <list> <oneOrMore> <choice> <ref name="CURIE.datatype"/> <value type="token" datatypeLibrary="">clarification</value> <a:documentation>An annotation whose purpose is to provide a clarification. </a:documentation> <value type="token" datatypeLibrary="">correction</value> <a:documentation>An annotation whose purpose is to provide a correction. </a:documentation> <value type="token" datatypeLibrary="">alteration</value> <a:documentation>An annotation whose purpose is to indicate an alteration made to the source document, such as the re-arrangement or removal of content. </a:documentation> <value type="token" datatypeLibrary="">production</value> <a:documentation>A temporary annotation not intended as part of the finished document, such as a production note </a:documentation> <value type="token" datatypeLibrary="">presentation</value> <a:documentation>An annotation whose purpose is to describe some aspect of the document layout, such as the formatting of a page or conventions used in rendering the content. </a:documentation> <value type="token" datatypeLibrary="">commentary</value> <a:documentation>An annotation whose purpose is to provide commentary. </a:documentation> <value type="token" datatypeLibrary="">attribution</value> <a:documentation>An annotation whose purpose is to provide a source or attribution. </a:documentation> <value type="token" datatypeLibrary="">introductory-note</value> <a:documentation>An annotation whose purpose is to provide an introductory note. </a:documentation> </choice> </oneOrMore> </list> </attribute> </define> <define name="z3998.annoref"> <element name="annoref" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The annoref element represents a textual reference to an annotation . Although not as common as with footnotes and endnotes, the content or location in the document being annotated may be noted by a text referent (e.g., a superscripted symbol). By default, the text content of the annoref represents the link reference and is treated as document content. When superscripted numbers or symbols are instead used to identify the corresponding annotation, the annoref.value attribute should be used. The annoref must be an empty element when attaching a value attribute; it it not permitted to include text content and a value attribute. The ref attribute is used to establish the link between the annoref and its associated annotation. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <ref name="z3998.ref.attrib"/> <optional> <ref name="z3998.annoref.value.attrib"/> </optional> <choice> <empty/> <oneOrMore> <choice> <ref name="z3998.span"/> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:annoref"> <sch:report test="@value and (count(*|text()[normalize-space()]) > 0)">The {value} attribute cannot be used on a non-empty {annoref}.</sch:report> <sch:report test="not(@value) and (count(*|text()[normalize-space()]) = 0)">An empty {annoref} element must include a {value} attribute.</sch:report> <sch:assert test="every $ref in tokenize(current()/@ref, ' +') satisfies key('annotations', $ref)">The IDREF(s) in the ref attribute must resolve to annotations. </sch:assert> </sch:rule> <sch:rule context="default:annoref" role="warning"> <sch:report role="warning" test="(count(node()[normalize-space()]) = 1) and child::default:sup">Superscripted referents should be included in a {value} attribute, not as text content.</sch:report> </sch:rule> </element> </define> <define name="z3998.annoref.value.attrib"> <attribute name="value" ns=""> <a:documentation>The annoref value attribute provides the number or symbol that represents the current annotation reference. The value attribute allows any text string as an identifier. </a:documentation> <ref name="NonEmptyString.datatype"/> </attribute> </define> <define name="z3998.aside.section"> <element name="aside" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The aside element represents information supplementary to the main text and/or narrative flow. The Section variant is an adaptation for use with asides that contain structured content. An aside typically floats separate from the main text, often in a boxed or shaded region. The role attribute optionally expresses the semantic nature of the aside. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.aside.role.attrib"/> </optional> <optional> <ref name="z3998.h"/> </optional> <interleave> <oneOrMore> <ref name="z3998.section"/> </oneOrMore> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> <sch:rule context="default:aside"> <sch:assert test="normalize-space(.) or *">The aside element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.aside.role.attrib"> <attribute name="role" ns=""> <list> <oneOrMore> <ref name="CURIE.datatype"/> </oneOrMore> </list> </attribute> </define> <define name="z3998.aside"> <element name="aside" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The aside element represents information supplementary to the main text and/or narrative flow. The Block variant is an adaptation for use with asides that contain unstructured content. An aside typically floats separate from the main text, often in a boxed or shaded region. The role attribute optionally expresses the semantic nature of the aside. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.aside.role.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:aside"> <sch:assert test="normalize-space(.) or *">The aside element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.caption"> <element name="caption" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The caption element represents a short explanation or description accompanying a component of a publication. Captions most often occur in conjunction with illustrations, photographs, tables and diagrams. The ref attribute identifies the component(s) to which the caption applies. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:caption"> <sch:assert test="not(child::default:caption)">The caption element must not contain child caption elements. </sch:assert> <sch:assert test="normalize-space(.) or *">The caption element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.verse"> <element name="verse" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The verse element represents a non-prose passage such as a poem, song, hymn etc., with or without metrical structure. The verse element consists of one or more lines and may lines may be broken up into division such as stanzas and cantos using the lngroup and verse.section elements. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <choice> <group> <interleave> <optional> <ref name="z3998.h"/> </optional> <oneOrMore> <choice> <ref name="z3998.transition"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annotation.phrase"/> <ref name="z3998.ln"/> <ref name="z3998.lngroup"/> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </interleave> <zeroOrMore> <ref name="z3998.verse.section"/> </zeroOrMore> </group> <group> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <choice> <ref name="z3998.transition"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annotation.phrase"/> <ref name="z3998.ln"/> <ref name="z3998.lngroup"/> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <oneOrMore> <ref name="z3998.verse.section"/> </oneOrMore> </group> </choice> </element> </define> <define name="z3998.verse.section"> <element name="section" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The section element represents a major structural division of a verse , such as a canto. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.verse.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.depth.attrib"/> </optional> <choice> <group> <interleave> <optional> <ref name="z3998.h"/> </optional> <oneOrMore> <choice> <ref name="z3998.transition"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annotation.phrase"/> <ref name="z3998.ln"/> <ref name="z3998.lngroup"/> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </interleave> <zeroOrMore> <ref name="z3998.verse.section"/> </zeroOrMore> </group> <group> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <choice> <ref name="z3998.transition"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annotation.phrase"/> <ref name="z3998.ln"/> <ref name="z3998.lngroup"/> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <oneOrMore> <ref name="z3998.verse.section"/> </oneOrMore> </group> </choice> </element> </define> <define name="z3998.verse.role.attrib"> <attribute name="role" ns=""> <list> <oneOrMore> <choice> <ref name="CURIE.datatype"/> <value type="token" datatypeLibrary="">poem</value> <a:documentation>A poem. </a:documentation> <value type="token" datatypeLibrary="">lyrics</value> <a:documentation>The text of a song. </a:documentation> <value type="token" datatypeLibrary="">hymn</value> <a:documentation>A hymn. </a:documentation> <value type="token" datatypeLibrary="">song</value> <a:documentation>A song. </a:documentation> </choice> </oneOrMore> </list> </attribute> </define> <define name="z3998.description"> <element name="description" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The description element represents an alternate accessible description of an image, video, table, etc. The Block variant is an adaption for use embedding descriptions in other Block-layer elements and for grouping descriptions in Section-layer elements (for example, in the document head , where they can be referenced globally). The description element can either contain the text content of the description or reference an external file in which it can be found via the xlink.href attribute. It is not permitted to mix both methods, however. To ensure the description can be rendered, the description element must not include descendant elements and attributes that require a description. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.description.role.attrib"/> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> <optional> <interleave> <ref name="xlink.href.attrib"/> <optional> <ref name="xlink.type.attrib"/> </optional> <optional> <ref name="xlink.title.attrib"/> </optional> <optional> <ref name="xlink.show.attrib"/> </optional> <optional> <ref name="xlink.actuate.attrib"/> </optional> </interleave> </optional> <choice> <empty/> <group> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> </choice> </oneOrMore> </group> <group> <oneOrMore> <choice> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <text/> </choice> </oneOrMore> </group> </choice> <sch:rule context="default:description"> <sch:assert test="(normalize-space(.) or *) or @xlink:href">The description element must either contain text data or point to an external resource using the xlink:href attribute. </sch:assert> <sch:report test="(normalize-space(.) or *) and @xlink:href">The {description} element must not contain text data and also point to an external resource using the {xlink:href} attribute.</sch:report> <sch:report test="descendant::default:description">The {description} element must not contain descendant {description} elements.</sch:report> <sch:report test="descendant::default:object">The {description} element must not contain descendant {object} elements.</sch:report> <sch:report test="descendant::default:table">The {description} element must not contain descendant {table} elements.</sch:report> <sch:report test="descendant::*[namespace-uri(.) = 'http://www.w3.org/1998/Math/MathML']">The {description} element must not contain descendant elements from the MathML feature grammar.</sch:report> </sch:rule> <sch:rule context="default:description[not(parent::default:object)]"> <sch:assert test="key('descrefs', current()/@xml:id) or key('descrefs', current()/@sel:selid)">Every description element must be referenced by at least one element in the document. </sch:assert> </sch:rule> <sch:rule context="default:object"> <sch:report test="count(descendant::default:description) > 1">The {object} element may contain only one child {description}.</sch:report> <sch:report test="not(child::default:description) and descendant::default:description">{description} elements cannot be nested inside the children of an {object} element.</sch:report> <sch:report test="child::default:description and count(child::node()[normalize-space(.)]) > 1">A single {description} element must be the only child of an {object} element when used.</sch:report> </sch:rule> </element> </define> <define name="z3998.description.phrase"> <element name="description" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The description element represents an alternate accessible description of an image, video, table, etc. The description element can either contain the text content of the description or reference an external file in which it can be found via the xlink.href attribute. It is not permitted to mix both methods, however. To ensure the description can be rendered, the description element must not include descendant elements and attributes that require a description. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.description.role.attrib"/> </optional> <ref name="z3998.ref.attrib"/> <optional> <interleave> <ref name="xlink.href.attrib"/> <optional> <ref name="xlink.type.attrib"/> </optional> <optional> <ref name="xlink.title.attrib"/> </optional> <optional> <ref name="xlink.show.attrib"/> </optional> <optional> <ref name="xlink.actuate.attrib"/> </optional> </interleave> </optional> <choice> <empty/> <group> <oneOrMore> <choice> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <text/> </choice> </oneOrMore> </group> </choice> <sch:rule context="default:description"> <sch:assert test="(normalize-space(.) or *) or @xlink:href">The description element must either contain text data or point to an external resource using the xlink:href attribute. </sch:assert> <sch:report test="(normalize-space(.) or *) and @xlink:href">The {description} element must not contain text data and also point to an external resource using the {xlink:href} attribute.</sch:report> <sch:report test="descendant::default:description">The {description} element must not contain descendant {description} elements.</sch:report> <sch:report test="descendant::default:object">The {description} element must not contain descendant {object} elements.</sch:report> <sch:report test="descendant::default:table">The {description} element must not contain descendant {table} elements.</sch:report> <sch:report test="descendant::*[namespace-uri(.) = 'http://www.w3.org/1998/Math/MathML']">The {description} element must not contain descendant elements from the MathML feature grammar.</sch:report> </sch:rule> <sch:rule context="default:description[not(parent::default:object)]"> <sch:assert test="key('descrefs', current()/@xml:id) or key('descrefs', current()/@sel:selid)">Every description element must be referenced by at least one element in the document. </sch:assert> </sch:rule> <sch:rule context="default:object"> <sch:report test="count(descendant::default:description) > 1">The {object} element may contain only one child {description}.</sch:report> <sch:report test="not(child::default:description) and descendant::default:description">{description} elements cannot be nested inside the children of an {object} element.</sch:report> <sch:report test="child::default:description and count(child::node()[normalize-space(.)]) > 1">A single {description} element must be the only child of an {object} element when used.</sch:report> </sch:rule> </element> </define> <define name="z3998.description.role.attrib"> <attribute name="role" ns=""> <list> <oneOrMore> <choice> <ref name="CURIE.datatype"/> <value type="token" datatypeLibrary="">structure</value> <a:documentation>A structural description for a piece of content (e.g., a table structure summary). </a:documentation> <value type="token" datatypeLibrary="">content</value> <a:documentation>A content description for a piece of content (e.g., an image description). </a:documentation> </choice> </oneOrMore> </list> </attribute> </define> <define name="z3998.description.text"> <element name="description" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The description element represents an alternate accessible description of an image, video, table, etc. The description element can either contain the text content of the description or reference an external file in which it can be found via the xlink.href attribute. It is not permitted to mix both methods, however. To ensure the description can be rendered, the description element must not include descendant elements and attributes that require a description. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.description.role.attrib"/> </optional> <ref name="z3998.ref.attrib"/> <optional> <interleave> <ref name="xlink.href.attrib"/> <optional> <ref name="xlink.type.attrib"/> </optional> <optional> <ref name="xlink.title.attrib"/> </optional> <optional> <ref name="xlink.show.attrib"/> </optional> <optional> <ref name="xlink.actuate.attrib"/> </optional> </interleave> </optional> <choice> <empty/> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:description"> <sch:assert test="(normalize-space(.) or *) or @xlink:href">The description element must either contain text data or point to an external resource using the xlink:href attribute. </sch:assert> <sch:report test="(normalize-space(.) or *) and @xlink:href">The {description} element must not contain text data and also point to an external resource using the {xlink:href} attribute.</sch:report> <sch:report test="descendant::default:description">The {description} element must not contain descendant {description} elements.</sch:report> <sch:report test="descendant::default:object">The {description} element must not contain descendant {object} elements.</sch:report> <sch:report test="descendant::default:table">The {description} element must not contain descendant {table} elements.</sch:report> <sch:report test="descendant::*[namespace-uri(.) = 'http://www.w3.org/1998/Math/MathML']">The {description} element must not contain descendant elements from the MathML feature grammar.</sch:report> </sch:rule> <sch:rule context="default:description[not(parent::default:object)]"> <sch:assert test="key('descrefs', current()/@xml:id) or key('descrefs', current()/@sel:selid)">Every description element must be referenced by at least one element in the document. </sch:assert> </sch:rule> <sch:rule context="default:object"> <sch:report test="count(descendant::default:description) > 1">The {object} element may contain only one child {description}.</sch:report> <sch:report test="not(child::default:description) and descendant::default:description">{description} elements cannot be nested inside the children of an {object} element.</sch:report> <sch:report test="child::default:description and count(child::node()[normalize-space(.)]) > 1">A single {description} element must be the only child of an {object} element when used.</sch:report> </sch:rule> </element> </define> <define name="z3998.desc.attrib"> <a:documentation>The desc attribute establishes the connection between the current element and its associated accessible description (s). The desc attribute must contain one or more space separated references to the IDs of the associated descriptions. Features may extend the use of this attribute, but not override the requirement that it resolve to a description. The Z39.98-2012 Content Selection feature , for example, provides a mechanism for pointing to a description based on the format being rendered. </a:documentation> <attribute name="desc" ns=""> <list> <oneOrMore> <ref name="NCName.datatype"/> </oneOrMore> </list> </attribute> <sch:rule context="default:*[@desc]"> <sch:assert test="every $descref in tokenize(current()/@desc,'\s+') satisfies key('descriptions', $descref)">Every IDREF in the desc attribute must resolve to a description element. </sch:assert> </sch:rule> </define> <define name="z3998.span"> <element name="span" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The span element represents an arbitrary phrase of text. The span element is similar to the block element in that only acts a container for its child content. It is a semantically neutral element by default, but may express some other commonality between the elements such as formatting or language. To convey a semantic connection between the child content, the optional role attribute must be attached. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.span.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:span"> <sch:assert test="normalize-space(.) or *">The span element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.span.role.attrib"> <attribute name="role" ns=""> <list> <oneOrMore> <choice> <ref name="CURIE.datatype"/> <value type="token" datatypeLibrary="">v-form</value> <a:documentation>A formal second-person pronoun. </a:documentation> <value type="token" datatypeLibrary="">t-form</value> <a:documentation>An informal second-person pronoun. </a:documentation> </choice> </oneOrMore> </list> </attribute> </define> <define name="z3998.span.text"> <element name="span" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The span element represents an arbitrary phrase of text. The span element is similar to the block element in that only acts a container for its child content. It is a semantically neutral element by default, but may express some other commonality between the elements such as formatting or language. To convey a semantic connection between the child content, the optional role attribute must be attached. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.span.role.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:span"> <sch:assert test="normalize-space(.) or *">The span element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.ln"> <element name="ln" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The ln element represents a single line of text. The lnum element can be added to the start of the ln to represent numbered lines. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <interleave> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <optional> <ref name="z3998.lnum"/> </optional> </interleave> <sch:rule context="default:ln"> <sch:assert test="not(descendant::default:ln)">The ln element must not contain descendant ln elements. </sch:assert> <sch:assert test="normalize-space(.) or *">The ln element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.lnum"> <element name="lnum" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The lnum element represents the line number of the parent ln . Line numbers are a common convention in poetic works, legal texts and programming code. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:lnum"> <sch:assert test="normalize-space(.) or *">The lnum element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.lngroup"> <element name="lngroup" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The lngroup element represents a group of lines . </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <interleave> <zeroOrMore> <ref name="z3998.note.phrase"/> </zeroOrMore> <zeroOrMore> <ref name="z3998.annotation.phrase"/> </zeroOrMore> <oneOrMore> <ref name="z3998.ln"/> </oneOrMore> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </element> </define> <define name="z3998.pagebreak"> <element name="pagebreak" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The pagebreak element represents the location of a page break in a print source. The pagebreak.value attribute optionally expresses a page number associated with the page. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <optional> <ref name="z3998.pagebreak.value.attrib"/> </optional> </element> </define> <define name="z3998.pagebreak.value.attrib"> <attribute name="value" ns=""> <a:documentation>The pagebreak value attribute provides the numbering of the page immediately following the pagebreak element. The value attribute allows any text string as an identifier to accommodate Arabic, roman and other sequencing conventions. </a:documentation> <ref name="NonEmptyString.datatype"/> </attribute> </define> <define name="z3998.s"> <element name="s" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The s element represents a grammatical and/or lexical sentence. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:s"> <sch:assert test="not(descendant::default:s)">The s element must not contain descendant s elements. </sch:assert> <sch:assert test="normalize-space(.) or *">The s element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.w"> <element name="w" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The w element represents a single, possibly compound, lexical word. The role attribute optionally expresses the semantic nature of the word. No implicit value is associated with the w element. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.w.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.wpart"/> </choice> </oneOrMore> <sch:rule context="default:w"> <sch:assert test="normalize-space(.) or *">The word element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.w.role.attrib"> <attribute name="role" ns=""> <list> <oneOrMore> <choice> <ref name="CURIE.datatype"/> <value type="token" datatypeLibrary="">v-form</value> <a:documentation>A formal second-person pronoun. </a:documentation> <value type="token" datatypeLibrary="">compound</value> <a:documentation>A word created by the combination of two or more stems. </a:documentation> <value type="token" datatypeLibrary="">t-form</value> <a:documentation>An informal second-person pronoun. </a:documentation> <value type="token" datatypeLibrary="">homograph</value> <a:documentation>An instance of a set of words with the same spelling but different etymologies and often pronunciations (e.g. bass the instrument and bass the fish). </a:documentation> <value type="token" datatypeLibrary="">portmanteau</value> <a:documentation>A word created from the merging of two other words (e.g. brunch from breakfast and lunch). </a:documentation> </choice> </oneOrMore> </list> </attribute> </define> <define name="z3998.wpart"> <element name="wpart" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The wpart element represents a segment of a word. The wpart element is typically used to distinguish the parts of a word (root, stem and affix), compound word, portmanteau or homograph. It can also be used in grammatical contexts to identify morphemes, graphemes and other divisions and boundaries within a word. The wpart element additionally can be used in place of soft hyphens to identify line ending break locations, if external formatting options are limited. The role attribute optionally expresses the semantic nature of the word part. No implicit value is associated with the wpart element. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <ref name="z3998.wpart"/> </choice> </oneOrMore> <sch:rule context="default:wpart"> <sch:assert test="normalize-space(.) or *">The wpart element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.abbr"> <element name="abbr" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The abbr element represents the abbreviated form of a phrase, term or name. The role attribute optionally expresses whether the type of abbreviation. The expansion and name elements provide a mechanism for associating an abbreviation with its uncontracted form. When including an expansion, the ref attribute on the abbr element links the abbreviation to an expansion or name. The ref attribute can also be used to reference a definition element when an explanatory definition of the abbreviation is also needed. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.abbr.role.attrib"/> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:abbr[@ref]"> <sch:assert test="some $exp in (//default:expansion, //default:name, //default:definition) satisfies current()/@ref eq $exp/@xml:id">The ref attribute on an abbr element must resolve to an expansion, name or definition element. </sch:assert> </sch:rule> <sch:rule context="default:abbr"> <sch:assert test="normalize-space(.) or *">The abbr element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.abbr.role.attrib"> <attribute name="role" ns=""> <list> <oneOrMore> <choice> <ref name="CURIE.datatype"/> <value type="token" datatypeLibrary="">truncation</value> <a:documentation>An abbreviation formed from the first part of a word. </a:documentation> <value type="token" datatypeLibrary="">initialism</value> <a:documentation>An abbreviation formed from initial letters of a name or expression, with each letter pronunced separately. </a:documentation> <value type="token" datatypeLibrary="">acronym</value> <a:documentation>An abbreviation formed from initial letters of a name or expression, pronounced as a word. </a:documentation> </choice> </oneOrMore> </list> </attribute> </define> <define name="z3998.expansion"> <element name="expansion" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The expansion element represents the fully expanded form of an abbreviation . The expansion element requires an xml:id attribute with a unique identifier for linking from the associated abbreviation. Expansions that are not part of the document content must be placed in the document head . </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.span"/> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:expansion"> <sch:assert test="not(descendant::default:expansion)">The expansion element must not contain descendant expansion elements. </sch:assert> <sch:assert test="normalize-space(.) or *">The expansion element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.emph"> <element name="emph" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The emph element represents an author's emphasis. Emphasis is not restricted to italicized text, but may constitute any of a variety of typographical or styling means used to distinguish text, such as bolding, underlining, coloring, etc. Nested emph elements indicate extra emphasized segments within an emphasized segment. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.span"/> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:emph"> <sch:assert test="normalize-space(.) or *">The emph element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.emph.text"> <element name="emph" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The emph element represents an author's emphasis. Emphasis is not restricted to italicized text, but may constitute any of a variety of typographical or styling means used to distinguish text, such as bolding, underlining, coloring, etc. Nested emph elements indicate extra emphasized segments within an emphasized segment. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:emph"> <sch:assert test="normalize-space(.) or *">The emph element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.time"> <element name="time" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The time element represents a calendar or clock-based statement of time. If the value of the time element is not in a machine-readable format, the time attribute optionally allows the inclusion of an alternate representation. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <optional> <ref name="z3998.time.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:time"> <sch:assert test="not(descendant::default:time)">The time element must not contain descendant time elements. </sch:assert> <sch:assert test="normalize-space(.) or *">The time element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.time.attrib"> <attribute name="time" ns=""> <a:documentation>The time attribute contains a calendar or clock-based statement of time expressed in machine-readable form. When this attribute appears on the time element, it contains an alternate rendition of the element's content. The time attribute value must be valid to the Time.datatype datatype. </a:documentation> <choice> <data type="gYear" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> <data type="gYearMonth" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> <data type="gMonthDay" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> <data type="gDay" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> <data type="gMonth" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> <data type="date" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> <data type="time" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> <data type="dateTime" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> <ref name="TimeNoSeconds.datatype"/> </choice> </attribute> </define> <define name="z3998.name"> <element name="name" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The name element represents particular instances of names, places and things (proper nouns). The role attribute optionally expresses the semantic nature of the proper noun. No implicit value is associated with the name element. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.name.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.abbr"/> <ref name="z3998.span.text"/> </choice> </oneOrMore> <sch:rule context="default:name"> <sch:assert test="normalize-space(.) or *">The name element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.name.role.attrib"> <attribute name="role" ns=""> <list> <oneOrMore> <choice> <ref name="CURIE.datatype"/> <value type="token" datatypeLibrary="">signature</value> <a:documentation>The handwritten, digital or stamped representation of a person's name. </a:documentation> <value type="token" datatypeLibrary="">place</value> <a:documentation>The name of a city, state, province, country or other geographic or political entity. . </a:documentation> <value type="token" datatypeLibrary="">taxonomy</value> <a:documentation>The name of a species, genus or other taxonomic classification. . </a:documentation> <value type="token" datatypeLibrary="">given-name</value> <a:documentation>The part of a personal name that distinguishes the person from a group of persons sharing the same surname. Also known as 'forename' or 'first name'. . </a:documentation> <value type="token" datatypeLibrary="">personal-name</value> <a:documentation>A proper name identifying a person, often composed of a given name and a family name. </a:documentation> <value type="token" datatypeLibrary="">surname</value> <a:documentation>The part of a personal name that associates the person with a group of persons sharing the same surname. Also known as 'last name'. </a:documentation> <value type="token" datatypeLibrary="">name-title</value> <a:documentation>The part of a personal name that signifies veneration, an official position or a professional or academic qualification. . </a:documentation> <value type="token" datatypeLibrary="">family-name</value> <a:documentation>The part of a personal name that indicates the family to which the person belongs. Often used in conjunction with a honorific. </a:documentation> <value type="token" datatypeLibrary="">nationality</value> <a:documentation>The name of a nationality, national group, or other designator of association. . </a:documentation> <value type="token" datatypeLibrary="">event</value> <a:documentation>The name of a religious, sporting, or other event, holiday or festival. . </a:documentation> <value type="token" datatypeLibrary="">award</value> <a:documentation>The name of an award or prize. . </a:documentation> <value type="token" datatypeLibrary="">product</value> <a:documentation>The brand name of a product, medication, etc. . </a:documentation> <value type="token" datatypeLibrary="">organization</value> <a:documentation>The name of an organization, corporation, or other business entity. . </a:documentation> </choice> </oneOrMore> </list> </attribute> </define> <define name="z3998.definition"> <element name="definition" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The definition element represents a formal description of the meaning of a word, term, phrase, or other construct. The definition element requires an xml:id attribute with a unique identifier for linking from the associated term. Definitions that are not part of the document content may be placed in the document head . </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:definition"> <sch:assert test="normalize-space(.) or *">The definition element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.term"> <element name="term" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The term element represents a word, or compound word, characterized by its particular use and context. The addition of a ref attribute establishes a link to a definition. The value of the ref attribute must reference the xml:id of a definition element </a:documentation> <optional> <ref name="z3998.ref.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.span"/> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:term"> <sch:assert test="normalize-space(.) or *">The term element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> <sch:rule context="default:term[@ref]"> <sch:assert test="some $def in //default:definition satisfies current()/@ref eq $def/@xml:id">The ref attribute on a term element must resolve to a definition. </sch:assert> </sch:rule> </element> </define> <define name="z3998.d"> <element name="d" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The d element represents an instance of dialogue in a book, play, article or other document. Quotation marks should be included within the element if they must be retained in the file. The use of CSS for appending these characters is recommended, however, for the flexibility it allows to change the characters depending on the desired output. The ref attribute can optionally be used to link an instance of dialogue to a character listed in a dramatis personae. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <optional> <ref name="z3998.ref.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:d"> <sch:assert test="not(descendant::default:d)">The d element must not contain descendant d elements. </sch:assert> <sch:assert test="normalize-space(.) or *">The d element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.sub"> <element name="sub" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The sub element represents instances of subscripted text. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:sub"> <sch:assert test="normalize-space(.) or *">The sub element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.sup"> <element name="sup" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The sup element represents instances of superscripted text. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:sup"> <sch:assert test="normalize-space(.) or *">The sup element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.num"> <element name="num" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The num element represents a set of Arabic or Roman numerals that taken together indicate a single value or represent a single number in a standardized format. Examples of numbers include: cardinal and ordinal values, weights, measures, currency values, postal codes, telephone numbers, ISBN numbers, scores and results, etc. Where these values include units of measure or other symbols integral to their understanding, the units and symbols must be included as a part of the num element. The role attribute optionally expresses the semantic nature of the number. If omitted, the implicit value cardinal is assumed. If the value of the num element is not in a machine-readable format, the num.value attribute optionally allows the inclusion of an alternate representation. The MathML feature is intended for marking proper mathematical statements within documents and should be used in preference over the num element whenever equations, formulae or other formal mathematic constructs or operators are being marked. The num element must not be used to mark instances of dates and times. Refer to the time element for more information. </a:documentation> <optional> <ref name="z3998.num.value.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.num.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="default:num"> <sch:assert test="normalize-space(.) or *">The num element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.num.value.attrib"> <attribute name="value" ns=""> <a:documentation>The value attribute provides the value of the num element in a machine-readable form. A processing agent's interpretation of the value depends on the specific type of numeral, as specified by the role attribute. </a:documentation> <ref name="NonEmptyString.datatype"/> </attribute> </define> <define name="z3998.num.role.attrib"> <attribute name="role" ns=""> <list> <oneOrMore> <choice> <ref name="CURIE.datatype"/> <value type="token" datatypeLibrary="">mixed</value> <a:documentation>A whole number followed by a fraction with a numerator and denominator. </a:documentation> <value type="token" datatypeLibrary="">decimal</value> <a:documentation>A single value where the integral number is separated from the fractional value by a decimal point or comma. </a:documentation> <value type="token" datatypeLibrary="">currency</value> <a:documentation>A currency value, including the denomination indicator. </a:documentation> <value type="token" datatypeLibrary="">measure</value> <a:documentation>A single value of measure, including units. </a:documentation> <value type="token" datatypeLibrary="">fraction</value> <a:documentation>A single fraction with a numerator and denominator, and without a preceding whole number. </a:documentation> <value type="token" datatypeLibrary="">ratio</value> <a:documentation>An expression of the magnitude of two quantities relative to each other. </a:documentation> <value type="token" datatypeLibrary="">roman</value> <a:documentation>A single value expressed using roman numerals. </a:documentation> <value type="token" datatypeLibrary="">ordinal</value> <a:documentation>A value indicating rank or position. </a:documentation> <value type="token" datatypeLibrary="">phone</value> <a:documentation>A phone number, including area code and international dialing code. </a:documentation> <value type="token" datatypeLibrary="">isbn</value> <a:documentation>An International Standard Book Number. </a:documentation> <value type="token" datatypeLibrary="">coordinate</value> <a:documentation>A value expressing the location of a point in n-dimensional space, including degree, minute and other indicators if specified. </a:documentation> <value type="token" datatypeLibrary="">postal-code</value> <a:documentation>A postal or zip code. </a:documentation> <value type="token" datatypeLibrary="">result</value> <a:documentation>A single value that includes two or more sets of numbers separated by spaces. </a:documentation> <value type="token" datatypeLibrary="">percentage</value> <a:documentation>A value that defines proportionality to a whole, including percent sign if present. </a:documentation> <value type="token" datatypeLibrary="">cardinal</value> <a:documentation>A value indicating quantity. </a:documentation> <value type="token" datatypeLibrary="">weight</value> <a:documentation>A single weight value, including units. </a:documentation> </choice> </oneOrMore> </list> </attribute> </define> <define name="z3998.char"> <element name="char" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The char element represents a single instance of a special character or a character with no Unicode equivalent. The char element can contain either a single character or a object tag, for characters and symbols that require special typesetting or display (e.g. ornamented initials at the start of chapters). </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <choice> <ref name="Character.datatype"/> <ref name="z3998.object.text"/> </choice> </element> </define> <define name="xml.id.attrib"> <attribute name="id" ns="http://www.w3.org/XML/1998/namespace"> <a:documentation>The xml:id attribute specifies a unique identifier for the element. No two elements in an xml document can have the same xml:id, including inside components that are appended to the primary document by xinclude statements or other means. The semantics of this attribute are defined by refXMLID . </a:documentation> <ref name="ID.datatype"/> </attribute> </define> <define name="xml.space.attrib"> <attribute name="space" ns="http://www.w3.org/XML/1998/namespace"> <a:documentation>The xml:space attribute indicates whether the whitespace within an element is significant. The semantics of this attribute are defined by refXML . Refer to White Space Handling for more information. </a:documentation> <choice> <value type="token" datatypeLibrary="">default</value> <a:documentation>Signals that applications' default white-space processing modes are acceptable for this element. </a:documentation> <value type="token" datatypeLibrary="">preserve</value> <a:documentation>Signals the intent that applications preserve white space for this element. </a:documentation> </choice> </attribute> </define> <define name="xml.base.attrib"> <attribute name="base" ns="http://www.w3.org/XML/1998/namespace"> <a:documentation>The xml:base attribute specifies a base URI to use for resolving relative URI references, for instances where the base URI of the document or external entity is not appropriate. The semantics and behaviors of this attribute are defined by refXMLBase . </a:documentation> <ref name="URI.datatype"/> </attribute> </define> <define name="z3998.class.attrib"> <attribute name="class" ns=""> <a:documentation>The class attribute provides the ability to express general classifying or commonality between elements. This attribute inherits all the fundamental properties of the (X)HTML class attribute and is usable in the context of CSS styling . The class attribute is not used to inflect semantics or structure on elements or their contents. Refer to the role attribute for more information on how to layer semantic meaning on elements. </a:documentation> <ref name="NMTOKENS.datatype"/> </attribute> </define> <define name="xml.lang.attrib"> <attribute name="lang" ns="http://www.w3.org/XML/1998/namespace"> <a:documentation>The xml:lang attribute identifies the natural or formal language in which the content is written. The semantics of this attribute are defined by refXML . Refer to Language Identification for more information. </a:documentation> <choice> <data type="language" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="length">0</param> </data> </choice> </attribute> </define> <define name="its.dir.attrib"> <attribute name="dir" ns="http://www.w3.org/2005/11/its"> <a:documentation>The its:dir attribute specifies the base writing direction of the content. If omitted, the implicit value ltr (left-to-right) is assumed. The semantics of this attribute are defined by refITS . Refer to Directionality for more information. </a:documentation> <choice> <value type="token" datatypeLibrary="">ltr</value> <a:documentation>The writing direction is left-to-right. This is the implicit value of this attribute. </a:documentation> <value type="token" datatypeLibrary="">rtl</value> <a:documentation>The writing direction is right-to-left. </a:documentation> <value type="token" datatypeLibrary="">lro</value> <a:documentation>The writing direction is left-to-right override. </a:documentation> <value type="token" datatypeLibrary="">rlo</value> <a:documentation>The writing direction is right-to-left override. </a:documentation> </choice> </attribute> </define> <define name="its.translate.attrib"> <attribute name="translate" ns="http://www.w3.org/2005/11/its"> <a:documentation>The its:translate attribute indicates whether the content of an element is translatable or not. If omitted, the implicit value yes is assumed. The semantics of this attribute are defined by refITS . Refer to Translate for more information. </a:documentation> <choice> <value type="token" datatypeLibrary="">yes</value> <a:documentation>The content is translatable. This is the default value of this attribute. </a:documentation> <value type="token" datatypeLibrary="">no</value> <a:documentation>The content is not translatable. </a:documentation> </choice> </attribute> </define> <define name="xlink.href.attrib"> <attribute name="href" ns="http://www.w3.org/1999/xlink"> <a:documentation>Identifies a link target with a Legacy extended IRI ( LeIRI ) </a:documentation> <ref name="URI.datatype"/> </attribute> </define> <define name="xlink.type.attrib"> <attribute name="type" ns="http://www.w3.org/1999/xlink"> <a:documentation>Identifies the XLink link type In any Z39.98-AI profile and as defined by XLink Simple Conformance , the xlink type simple is the implied xlink type, and does therefore not need to be expressed literally using the xlink.type attribute. </a:documentation> <value type="token" datatypeLibrary="">simple</value> <a:documentation>The XLink simple link type </a:documentation> </attribute> </define> <define name="xlink.title.attrib"> <attribute name="title" ns="http://www.w3.org/1999/xlink"> <a:documentation>Identifies the XLink title of the link. </a:documentation> <text/> </attribute> </define> <define name="xlink.show.attrib"> <attribute name="show" ns="http://www.w3.org/1999/xlink"> <a:documentation>Identifies the XLink show behavior of the link </a:documentation> <choice> <value type="token" datatypeLibrary="">new</value> <a:documentation>An application traversing to the ending resource should load it in a new window, frame, pane, or other relevant presentation context. </a:documentation> <value type="token" datatypeLibrary="">replace</value> <a:documentation>An application traversing to the ending resource should load the resource in the same window, frame, pane, or other relevant presentation context in which the starting resource was loaded. </a:documentation> <value type="token" datatypeLibrary="">embed</value> <a:documentation>An application traversing to the ending resource should load its presentation in place of the presentation of the starting resource. </a:documentation> <value type="token" datatypeLibrary="">other</value> <a:documentation>The behavior of an application traversing to the ending resource is unconstrained by XLink. The application should look for other markup present in the link to determine the appropriate behavior. </a:documentation> <value type="token" datatypeLibrary="">none</value> <a:documentation>The behavior of an application traversing to the ending resource is unconstrained by this specification. No other markup is present to help the application determine the appropriate behavior. </a:documentation> </choice> </attribute> </define> <define name="xlink.actuate.attrib"> <attribute name="actuate" ns="http://www.w3.org/1999/xlink"> <a:documentation>Identifies the XLink actuate behavior of the link </a:documentation> <choice> <value type="token" datatypeLibrary="">onLoad</value> <a:documentation>An application should traverse to the ending resource immediately on loading the starting resource. </a:documentation> <value type="token" datatypeLibrary="">onRequest</value> <a:documentation>An application should traverse from the starting resource to the ending resource only on a post-loading event triggered for the purpose of traversal. </a:documentation> <value type="token" datatypeLibrary="">other</value> <a:documentation>The behavior of an application traversing to the ending resource is unconstrained by this specification. The application should look for other markup present in the link to determine the appropriate behavior. </a:documentation> <value type="token" datatypeLibrary="">none</value> <a:documentation>The behavior of an application traversing to the ending resource is unconstrained by this specification. No other markup is present to help the application determine the appropriate behavior. </a:documentation> </choice> </attribute> </define> <define name="z3998.depth.attrib"> <attribute name="depth" ns=""> <a:documentation>The depth attribute specifies the nesting depth of the current element in relation to ancestors of the same type. An element's name alone does not infer an ancestral relationship; the usage context is equally important. For example, the depth of the first index section is not influenced by the number of structural sections that may enclose the index. The outermost ancestor has the implied depth value 0. </a:documentation> <ref name="NonNegativeInteger.datatype"/> </attribute> </define> <define name="rdfa.prefix.attrib"> <attribute name="prefix" ns=""> <a:documentation>The prefix attribute associates RDFa vocabulary namespace prefixes and URIs, as defined in RDFa Core 1.1 . The prefix attribute may optionally be attached to the root document element. Z39.98-AI profiles must not allow the attribute to be attached to any other element. The prefix attribute must not be used to redefine prefixes or URIs declared in the default context document for the profile. </a:documentation> <ref name="rdfa.prefix.attrib.content"/> </attribute> </define> <define name="rdfa.prefix.attrib.content"> <data type="normalizedString" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">\s*([\i-[:]][\c-[:]]*: +[^ ]+)(\s+[\i-[:]][\c-[:]]*: +[^ ]+)*\s*</param> </data> </define> <define name="rdfa.about.attrib"> <attribute name="about" ns=""> <a:documentation>The about attribute specifies the subject of a relationship. If not given, then the subject is the current document. </a:documentation> <ref name="URI.datatype"/> <sch:rule context="*[@about and starts-with(@about,'#')]"> <sch:assert test="exists(//*[@xml:id eq substring-after(current()/@about,'#')])">The fragment URI in the about attribute must resolve to an ID in the document. </sch:assert> </sch:rule> </attribute> </define> <define name="rdfa.content.attrib"> <attribute name="content" ns=""> <a:documentation>The content attribute specifies a string to use as an object for the rdfa.property attribute. </a:documentation> <text/> </attribute> </define> <define name="rdfa.datatype.attrib"> <attribute name="datatype" ns=""> <a:documentation>The datatype attribute specifies a datatype of the object of the rdfa.property attribute (either in the content attribute, or the content of the element that the datatype attribute is on.) By default, data in the content attribute is of type string, and data in the content of an element has type xml:Literal. If datatype="" is used, then for the RDF the element content is stripped of markup, and is of type string. </a:documentation> <ref name="CURIE.datatype"/> <sch:rule context="*[@datatype]"> <sch:assert test="every $prefix in substring-before(@datatype, ':') satisfies (key('rdfprefix', $prefix) or key('rdfprofile', $prefix) or $prefix='')">The datatype attribute contains an undeclared CURIE prefix. </sch:assert> </sch:rule> </attribute> </define> <define name="rdfa.typeof.attrib"> <attribute name="typeof" ns=""> <a:documentation>The typeof attribute creates a blank node, which becomes the subject, and asserts that the current element contains relationships that match the given RDF type. </a:documentation> <list> <oneOrMore> <ref name="CURIE.datatype"/> </oneOrMore> </list> <sch:rule context="*[@typeof]"> <sch:assert test="every $curie in tokenize(@typeof, '\s+') satisfies ( (every $prefix in substring-before($curie, ':') satisfies (key('rdfprefix', $prefix) or key('rdfprofile', $prefix) or $prefix='')))">The typeof attribute contains an undeclared CURIE prefix. </sch:assert> </sch:rule> </attribute> </define> <define name="rdfa.property.attrib"> <attribute name="property" ns=""> <a:documentation>The property attribute defines a relationship between the subject and either a string (if the rdfa.content attribute is present) or the content of the element that the property attribute is on. </a:documentation> <list> <oneOrMore> <ref name="CURIE.datatype"/> </oneOrMore> </list> <sch:rule context="*[@property]"> <sch:assert test="every $curie in tokenize(@property, '\s+') satisfies ( (every $prefix in substring-before($curie, ':') satisfies (key('rdfprefix', $prefix) or key('rdfprofile', $prefix) or $prefix='')))">The property attribute contains an undeclared CURIE prefix. </sch:assert> </sch:rule> </attribute> </define> <define name="rdfa.rel.attrib"> <attribute name="rel" ns=""> <a:documentation>The rel attribute defines a relation between the subject and a URL given by the rdfa.resource attribute. The rdfa.rev attribute expresses the inverse relation. </a:documentation> <list> <oneOrMore> <ref name="CURIE.datatype"/> </oneOrMore> </list> <sch:rule context="*[@rel]"> <sch:assert test="every $curie in tokenize(@rel, '\s+') satisfies ( (every $prefix in substring-before($curie, ':') satisfies (key('rdfprefix', $prefix) or key('rdfprofile', $prefix) or $prefix='')))">The rel attribute contains an undeclared CURIE prefix. </sch:assert> </sch:rule> </attribute> </define> <define name="rdfa.resource.attrib"> <attribute name="resource" ns=""> <a:documentation>The resource attribute specifies an object URI for the rdfa.rev and rdfa.rel attributes, if the attribute href is not present. </a:documentation> <ref name="URI.datatype"/> </attribute> </define> <define name="rdfa.rev.attrib"> <attribute name="rev" ns=""> <a:documentation>The rev attribute defines a relation between the subject and a URL given by the rdfa.resource attribute. The rdfa.rel attribute expresses the inverse relation. </a:documentation> <list> <oneOrMore> <ref name="CURIE.datatype"/> </oneOrMore> </list> <sch:rule context="*[@rev]"> <sch:assert test="every $curie in tokenize(@rev, '\s+') satisfies ( (every $prefix in substring-before($curie, ':') satisfies (key('rdfprefix', $prefix) or key('rdfprofile', $prefix) or $prefix='')))">The rev attribute contains an undeclared CURIE prefix. </sch:assert> </sch:rule> </attribute> </define> <define name="z3998.role.attrib"> <attribute name="role" ns=""> <a:documentation>The role attribute expresses a semantic inflection on the nature or purpose of its parent element. The attribute takes as its value one or more whitespace separated CURIEs refRDFa11 , that must be bound to one or more RDF vocabularies either defined in the RDFa initial context document or by the rdfa.prefix attribute. The role attribute is intended to be functionally compatible with the WAI-PF role attribute ( refROLE ) in its expression of document metadata to improve the accessibility of documents marked up to Z39.98-AI profiles. </a:documentation> <list> <oneOrMore> <ref name="CURIE.datatype"/> </oneOrMore> </list> <sch:rule context="*[@role]"> <sch:assert test="every $curie in tokenize(@role, '\s+') satisfies ( (every $prefix in substring-before($curie, ':') satisfies (key('rdfprefix', $prefix) or key('rdfprofile', $prefix) or $prefix='')))">The role attribute contains an undeclared CURIE prefix. </sch:assert> </sch:rule> </attribute> </define> <define name="z3998.by.attrib"> <attribute name="by" ns=""> <a:documentation>The by attribute expresses the contributor of an element to the document source, such as the author, editor, a republisher, etc. The by attribute allows a single CURIE as its value, which must be bound to an RDF property using the mechanism defined in CURIE . All descendants of an element that declares a by attribute value implicitly inherit that value. In the absence of an expressed relationship, the implicit value author is assumed. </a:documentation> <list> <oneOrMore> <choice> <ref name="CURIE.datatype"/> <value type="token" datatypeLibrary="">author</value> <a:documentation>An author of a work. </a:documentation> <value type="token" datatypeLibrary="">general-editor</value> <a:documentation>The general editor of a work. </a:documentation> <value type="token" datatypeLibrary="">translator</value> <a:documentation>A translator of a work. </a:documentation> <value type="token" datatypeLibrary="">commentator</value> <a:documentation>A commentator on a work. </a:documentation> <value type="token" datatypeLibrary="">editor</value> <a:documentation>An editor of a work. </a:documentation> <value type="token" datatypeLibrary="">republisher</value> <a:documentation>A republisher of a work. </a:documentation> </choice> </oneOrMore> </list> </attribute> </define> <define name="z3998.frontmatter"> <element name="frontmatter" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The frontmatter element groups the initial/preliminary sections of a document. Frontmatter typically consists of such sections as forewords, prefaces, acknowledgements, introductions, dedications, prologues, and tables of contents. Frontmatter pages are typically identified by the use of Roman numerals for their numbering, but numbering alone is not a reliable indicator (it is not uncommon for front matter to begin with Arabic number 1, for example). The table of contents may help identify frontmatter sections either through emphasized typeface and/or the use of line breaks between the front, body and back matter sections. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.section"/> <ref name="z3998.toc"/> <ref name="z3998.bibliography"/> <ref name="z3998.glossary"/> </choice> </oneOrMore> </element> </define> <define name="z3998.bodymatter"> <element name="bodymatter" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The bodymatter element groups the primary narrative of a document, as contrasted with preliminary material in frontmatter and supplementary information in backmatter. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <oneOrMore> <ref name="z3998.section"/> </oneOrMore> </element> </define> <define name="z3998.backmatter"> <element name="backmatter" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The backmatter element groups supplementary sections at the end of a document. Backmatter typically consists of such sections as appendices, glossaries, bibliographies and indices. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.section"/> <ref name="z3998.toc"/> <ref name="z3998.index"/> <ref name="z3998.bibliography"/> <ref name="z3998.glossary"/> </choice> </oneOrMore> </element> </define> <define name="z3998.toc"> <element name="toc" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The toc element represents a single table of contents in a document. The Section variant is an adaption for use when a table of contents represents a unique section of a work, such as the primary table of contents in the front matter of a book. The term "table of contents" is a generalization encompassing all of tables of contents, tables of figures, tables of maps and similar guides to the contents of a document. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <choice> <ref name="z3998.toc.aside"/> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <interleave> <oneOrMore> <choice> <ref name="z3998.toc.entry"/> <ref name="z3998.toc.section"/> </choice> </oneOrMore> <zeroOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> </element> </define> <define name="z3998.toc.block"> <element name="toc" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The toc element represents a single table of contents in a document. The Block variant is an adaption for use when a table of contents is embedded within another sections, such as a mini table of contents to start a section. The term "table of contents" is a generalization encompassing all of tables of contents, tables of figures, tables of maps and similar guides to the contents of a document. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <interleave> <oneOrMore> <choice> <ref name="z3998.toc.entry"/> <ref name="z3998.toc.section"/> </choice> </oneOrMore> <zeroOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> </element> </define> <define name="z3998.toc.entry"> <element name="entry" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The toc entry element represents a single entry in a table of contents , including all related child entries. A toc entry typically consists of the text on the leader line followed by an optional ref element indicating the corresponding print page. The ref element can also be used to link the text of the entry directly to the location in the document when the table of contents or document does not include page numbers. The toc block element is used to group all secondary information that falls below the leader line. It is not intended to group subentries, which should be included as children of the primary entry following the block.. </a:documentation> <optional> <ref name="z3998.depth.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.rend.prefix.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.span"/> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <optional> <ref name="z3998.ref"/> </optional> <optional> <ref name="z3998.toc.entry.elem.block"/> </optional> <zeroOrMore> <choice> <ref name="z3998.toc.entry"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> <sch:rule context="default:entry[ancestor::default:toc]"> <sch:assert test="normalize-space(.) or *">The entry element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.toc.entry.elem.block"> <element name="block" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The toc block element is used to group any ancillary information that falls under an entry's leader line (not including subentries), such as descriptions or topic lists. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> <ref name="z3998.list"/> <ref name="z3998.toc.aside"/> </choice> </oneOrMore> <sch:rule context="default:block"> <sch:assert test="normalize-space(.) or *">The block element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.toc.section"> <element name="section" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The toc section element represents a subdivision of a table of contents . The toc section element is a specialization of the section element that provides a content model to fit the unique requirements of table of contents divisions. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <choice> <ref name="z3998.toc.aside"/> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <interleave> <oneOrMore> <choice> <ref name="z3998.toc.entry"/> <ref name="z3998.toc.section"/> </choice> </oneOrMore> <zeroOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> </element> </define> <define name="z3998.toc.aside"> <element name="aside" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The toc aside element represents a separate block of information in a toc table of contents from the main sections and entries. The toc aside element typically represents information in the margins of a print table of contents. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <interleave> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <zeroOrMore> <ref name="z3998.toc"/> </zeroOrMore> </interleave> <sch:rule context="default:aside"> <sch:assert test="normalize-space(.) or *">The aside element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.cover"> <element name="cover" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The cover element represents the complete cover or jacket of a print publication. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.spine"/> </optional> <optional> <ref name="z3998.frontcover"/> </optional> <optional> <ref name="z3998.backcover"/> </optional> <optional> <ref name="z3998.flaps"/> </optional> <sch:rule context="default:cover"> <sch:assert test="count(*) > 0">The cover element must contain at least one of its allowed children. </sch:assert> <sch:report test="descendant::default:pagebreak">The {cover} element must contain descendant {pagebreak}s.</sch:report> </sch:rule> </element> </define> <define name="z3998.spine"> <element name="spine" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The spine element represents the section of the cover that overlays the bound inner side of a publication. The spine typically contains the author/editor name(s), title and the publisher/imprint logo. Information on the spine is often truncated because of space constraints. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> </choice> </oneOrMore> </choice> <sch:rule context="default:spine"> <sch:assert test="normalize-space(.) or *">The spine element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.frontcover"> <element name="frontcover" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The frontcover element represents all content and images contained on the inside and outside of the front cover. The front outside cover typically contains the title and/or author information overlaid on an illustration. The front inside cover may contain maps, additional books by the author, pricing, ISBN numbers, etc. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> </choice> </oneOrMore> </element> </define> <define name="z3998.backcover"> <element name="backcover" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The backcover element represents all content and images contained on the inside and outside of the back cover. The back covers typically contain biographical information about contributors, quotes, and a summary or description of the publication. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> </choice> </oneOrMore> </element> </define> <define name="z3998.flaps"> <element name="flaps" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The flaps element represents all content and images contained on the front and back jacket flaps. If the content on the flaps is continued from the front to back flap, it should be merged and treated as unbroken. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> </choice> </oneOrMore> </element> </define> <define name="z3998.index"> <element name="index" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The index element represents a topical reference section in a book. The entries in an index may be grouped into sections by topic or alphabetic letter. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <choice> <ref name="z3998.aside"/> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <choice> <group> <interleave> <oneOrMore> <ref name="z3998.index.entry"/> </oneOrMore> <zeroOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <zeroOrMore> <ref name="z3998.index.section"/> </zeroOrMore> </group> <group> <zeroOrMore> <ref name="z3998.index.entry"/> </zeroOrMore> <oneOrMore> <ref name="z3998.index.section"/> </oneOrMore> </group> </choice> </element> </define> <define name="z3998.index.section"> <element name="section" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The index section element represents a major structural division of an index . The index section element is a specialization of the section element that provides a content model to fit the unique requirements of index divisions. The republishing of documents often requires the insertion of content that was not a part of the original source document. For example, in the case of indexes, bibliographies and other ordered sections, this requirement may take the form of placeholder sections to mark gaps in the alphabetic list of entries. To indicate that an element presents content that is a deviation from the source, the role attribute can be used with the value custom. No behaviors are defined for how a processing agent should handle sections so identified, however. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <choice> <ref name="z3998.aside"/> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <choice> <group> <interleave> <oneOrMore> <ref name="z3998.index.entry"/> </oneOrMore> <zeroOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <zeroOrMore> <ref name="z3998.index.section"/> </zeroOrMore> </group> <group> <zeroOrMore> <ref name="z3998.index.entry"/> </zeroOrMore> <oneOrMore> <ref name="z3998.index.section"/> </oneOrMore> </group> </choice> </element> </define> <define name="z3998.index.entry"> <element name="entry" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The index entry element represents a single entry in an index , including all related child entries. The ref element can be used to link page number references back to the corresponding location in the document. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.rend.prefix.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <zeroOrMore> <choice> <ref name="z3998.index.entry"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> <sch:rule context="default:entry[ancestor::default:index]"> <sch:assert test="normalize-space(.) or *">The entry element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.bibliography"> <element name="bibliography" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The bibliography element represents a bibliography, discography, filmography or other bibliographic section. The entries in an bibliography may be grouped into sections by topic, work, alphabetic letter or other means. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <choice> <ref name="z3998.aside"/> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <choice> <group> <interleave> <oneOrMore> <ref name="z3998.bibliography.entry"/> </oneOrMore> <zeroOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <zeroOrMore> <ref name="z3998.bibliography.section"/> </zeroOrMore> </group> <group> <zeroOrMore> <ref name="z3998.bibliography.entry"/> </zeroOrMore> <oneOrMore> <ref name="z3998.bibliography.section"/> </oneOrMore> </group> </choice> </element> </define> <define name="z3998.bibliography.section"> <element name="section" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The bibliography section element represents a major structural division of a bibliography . The bibliography section element is a specialization of the section element that provides a content model to fit the unique requirements of bibliographic divisions. The republishing of documents often requires the insertion of content that was not a part of the original source document. For example, in the case of indexes, bibliographies and other ordered sections, this requirement may take the form of placeholder sections to mark gaps in the alphabetic list of entries. To indicate that an element presents content that is a deviation from the source, the role attribute can be used with the value custom. No behaviors are defined for how a processing agent should handle sections so identified, however. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <choice> <ref name="z3998.aside"/> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <choice> <group> <interleave> <oneOrMore> <ref name="z3998.bibliography.entry"/> </oneOrMore> <zeroOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <zeroOrMore> <ref name="z3998.bibliography.section"/> </zeroOrMore> </group> <group> <zeroOrMore> <ref name="z3998.bibliography.entry"/> </zeroOrMore> <oneOrMore> <ref name="z3998.bibliography.section"/> </oneOrMore> </group> </choice> </element> </define> <define name="z3998.bibliography.entry"> <element name="entry" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The bibliography entry element represents a single unique entry in a bibliography . </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:entry[ancestor::default:bibliography]"> <sch:assert test="normalize-space(.) or *">The entry element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.glossary"> <element name="glossary" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The glossary element represents a glossary, pronunciation guide or other section that exclusively defines terms or phrases. The Section variant is an adaptation for use including terms and definitions that have been grouped as a separate section in a work, and where the glossary contains structured groups of entries by topic, letter of the alphabet, etc. The republishing of documents often requires the insertion of content that was not a part of the original source document. For example, in the case of indexes, bibliographies and other ordered sections, this requirement may take the form of placeholder sections to mark gaps in the alphabetic list of entries. To indicate that an element presents content that is a deviation from the source, the role attribute can be used with the value custom. No behaviors are defined for how a processing agent should handle sections so identified, however. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <choice> <ref name="z3998.aside"/> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <choice> <group> <interleave> <oneOrMore> <ref name="z3998.glossary.entry"/> </oneOrMore> <zeroOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <zeroOrMore> <ref name="z3998.glossary.section"/> </zeroOrMore> </group> <group> <zeroOrMore> <ref name="z3998.glossary.entry"/> </zeroOrMore> <oneOrMore> <ref name="z3998.glossary.section"/> </oneOrMore> </group> </choice> </element> </define> <define name="z3998.glossary.block"> <element name="glossary" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The glossary element represents a glossary, pronunciation guide or other section that exclusively defines terms or phrases. The Block variant is an adaptation for use including terms and definitions that have been grouped within the body of a work. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <group> <oneOrMore> <ref name="z3998.glossary.entry"/> </oneOrMore> </group> </element> </define> <define name="z3998.glossary.section"> <element name="section" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The glossary section element represents a major structural division in a glossary . The glossary section element is a specialization of the section element. It provides a content model to fit the unique requirements of glossary divisions. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <interleave> <optional> <ref name="z3998.h"/> </optional> <zeroOrMore> <choice> <ref name="z3998.aside"/> <ref name="z3998.block"/> <ref name="z3998.hd"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.object.block"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <choice> <group> <interleave> <oneOrMore> <ref name="z3998.glossary.entry"/> </oneOrMore> <zeroOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.pagebreak"/> </choice> </zeroOrMore> </interleave> <zeroOrMore> <ref name="z3998.glossary.section"/> </zeroOrMore> </group> <group> <zeroOrMore> <ref name="z3998.glossary.entry"/> </zeroOrMore> <oneOrMore> <ref name="z3998.glossary.section"/> </oneOrMore> </group> </choice> </element> </define> <define name="z3998.glossary.entry"> <element name="entry" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The glossary entry element represents a single unique entry in a glossary . A glossary entry must contain one or more term elements and either one or more definition elements or one or more ref elements pointing to a definition. To facilitate the markup of glossaries, if an entry contains exactly one term and one definition an implicit association is assumed between them (i.e., the normal requirement to explicitly link the term to the definition by the ref attribute does not apply). If the entry contains mutliple term or definition elements, then the explicit association of each is required. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="z3998.rend.prefix.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="default:entry[ancestor::default:glossary]"> <sch:assert test="descendant::default:term">Each entry element must contain at least one term element. </sch:assert> <sch:assert test="descendant::default:definition or descendant::default:ref">Each entry element must contain at least one definition or ref element. </sch:assert> <sch:report test="(count(descendant::default:term) > 1 or count(descendant::default:definition) > 1) and descendant::default:term[not(@ref)]">Each {term} element must explicitly reference its {definition}(s) when more than one {term} or {definition} are included in the {entry}.</sch:report> <sch:assert test="descendant::default:definition or descendant::default:ref[some $ref in tokenize(@ref, '\s+') satisfies //default:definition[@xml:id=$ref]]">Each entry element must contain at least one definition or reference to a definition. </sch:assert> <sch:assert test="normalize-space(.) or *">The entry element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.break"> <element name="break" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Controls the pausing or other prosodic boundaries between tokens. Refer to SSML 1.1 for further information. </a:documentation> <optional> <ref name="ssml.strength.attrib"/> </optional> <optional> <ref name="ssml.time.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> </element> </define> <define name="ssml.strength.attrib"> <attribute name="strength" ns=""> <a:documentation>Indicates the prosodic strength of the break in the speech output. Refer to SSML 1.1 for further information. </a:documentation> <choice> <value type="token" datatypeLibrary="">none</value> <a:documentation>Indicates that no prosodic break boundary should be output. </a:documentation> <value type="token" datatypeLibrary="">x-weak</value> <value type="token" datatypeLibrary="">weak</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">strong</value> <value type="token" datatypeLibrary="">x-strong</value> </choice> </attribute> </define> <define name="ssml.time.attrib"> <attribute name="time" ns=""> <a:documentation>Indicates the duration of a pause to be inserted in the output in seconds or milliseconds. Refer to SSML 1.1 for further information. </a:documentation> <ref name="CSS.TimeValue.datatype"/> </attribute> </define> <define name="ssml.onlangfailure.attrib"> <attribute name="onlangfailure" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Describes the desired behavior of a synthesis processor upon language speaking failure. The value of this attribute is inherited by descendants. Refer to SSML 1.1 for further information. </a:documentation> <choice> <value type="token" datatypeLibrary="">changevoice</value> <a:documentation>if a voice exists that can speak the language, the synthesis processor will switch to that voice and speak the content. Otherwise, the processor chooses another behavior (either ignoretext or ignorelang) </a:documentation> <value type="token" datatypeLibrary="">ignoretext</value> <a:documentation>the synthesis processor will not attempt to render the text that is in the failed language. </a:documentation> <value type="token" datatypeLibrary="">ignorelang</value> <a:documentation>the synthesis processor will ignore the change in language and speak as if the content were in the previous language. </a:documentation> <value type="token" datatypeLibrary="">processorchoice</value> <a:documentation>processorchoice - the synthesis processor chooses the behavior (either changevoice, ignoretext, or ignorelang). </a:documentation> </choice> </attribute> </define> <define name="ssml.phoneme"> <element name="phoneme" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Provides a phonemic/phonetic pronunciation for the contained text. The phoneme element may be empty. However, it is recommended that the element contain human-readable text that can be used for non-spoken rendering of the document. Refer to SSML 1.1 for further information. </a:documentation> <ref name="ssml.ph.attrib"/> <optional> <ref name="ssml.alphabet.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="ssml:phoneme"> <sch:assert test="not(descendant::ssml:*) and not(descendant::*[@ssml:*])">The ssml:phoneme element must not have ssml namespace element or attribute descendants. </sch:assert> <sch:assert test="normalize-space(.) or *">The ssml:phoneme element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.phoneme.text"> <element name="phoneme" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Provides a phonemic/phonetic pronunciation for the contained text. The phoneme element may be empty. However, it is recommended that the element contain human-readable text that can be used for non-spoken rendering of the document. Refer to SSML 1.1 for further information. </a:documentation> <ref name="ssml.ph.attrib"/> <optional> <ref name="ssml.alphabet.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="ssml:phoneme"> <sch:assert test="not(descendant::ssml:*) and not(descendant::*[@ssml:*])">The ssml:phoneme element must not have ssml namespace element or attribute descendants. </sch:assert> <sch:assert test="normalize-space(.) or *">The ssml:phoneme element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.ph.attrib"> <attribute name="ph" ns=""> <a:documentation>Specifies a phonemic/phonetic pronunciation for the text contained in the current element. Refer to SSML 1.1 for further information. </a:documentation> <text/> </attribute> </define> <define name="ssml.alphabet.attrib"> <attribute name="alphabet" ns=""> <a:documentation>Specifies which phonemic/phonetic pronunciation alphabet is used in the ssml.ph attribute. If omitted, the implicit value x-SAMPA is assumed. Refer to SSML 1.1 for further information. </a:documentation> <choice> <value type="token" datatypeLibrary="">ipa</value> <a:documentation>The pronunciation alphabet is IPA . </a:documentation> <value type="token" datatypeLibrary="">x-SAMPA</value> <a:documentation>The pronunciation alphabet is X-SAMPA . </a:documentation> <text/> </choice> </attribute> </define> <define name="ssml.prosody"> <element name="prosody" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Permits control of the pitch, speaking rate and volume of speech output. Refer to SSML 1.1 for further information. </a:documentation> <optional> <ref name="ssml.pitch.attrib"/> </optional> <optional> <ref name="ssml.contour.attrib"/> </optional> <optional> <ref name="ssml.range.attrib"/> </optional> <optional> <ref name="ssml.rate.attrib"/> </optional> <optional> <ref name="ssml.duration.attrib"/> </optional> <optional> <ref name="ssml.volume.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="ssml:prosody"> <sch:assert test="not(descendant::ssml:prosody)">The ssml:prosody element must not have ssml:prosody descendants. </sch:assert> <sch:assert test="normalize-space(.) or *">The ssml:prosody element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.prosody.text"> <element name="prosody" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Permits control of the pitch, speaking rate and volume of speech output. Refer to SSML 1.1 for further information. </a:documentation> <optional> <ref name="ssml.pitch.attrib"/> </optional> <optional> <ref name="ssml.contour.attrib"/> </optional> <optional> <ref name="ssml.range.attrib"/> </optional> <optional> <ref name="ssml.rate.attrib"/> </optional> <optional> <ref name="ssml.duration.attrib"/> </optional> <optional> <ref name="ssml.volume.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="ssml:prosody"> <sch:assert test="not(descendant::ssml:prosody)">The ssml:prosody element must not have ssml:prosody descendants. </sch:assert> <sch:assert test="normalize-space(.) or *">The ssml:prosody element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.pitch.attrib"> <attribute name="pitch" ns=""> <a:documentation>Specifies the baseline pitch for the contained text. The labels x-low through x-high represent a sequence of monotonically non-decreasing pitch levels. Refer to SSML 1.1 for further information. </a:documentation> <choice> <value type="token" datatypeLibrary="">x-low</value> <value type="token" datatypeLibrary="">low</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">high</value> <value type="token" datatypeLibrary="">x-high</value> <value type="token" datatypeLibrary="">default</value> <ref name="SSML.RelativeChange.datatype"/> <ref name="SSML.PitchExpression.datatype"/> </choice> </attribute> </define> <define name="ssml.contour.attrib"> <attribute name="contour" ns=""> <a:documentation>Sets the pitch contour for the contained text. Refer to SSML 1.1 for further information. </a:documentation> <ref name="SSML.PitchContour.datatype"/> </attribute> </define> <define name="ssml.range.attrib"> <attribute name="range" ns=""> <a:documentation>Specifies the pitch range (variability) for the contained text. Refer to SSML 1.1 for further information. </a:documentation> <choice> <value type="token" datatypeLibrary="">x-low</value> <value type="token" datatypeLibrary="">low</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">high</value> <value type="token" datatypeLibrary="">x-high</value> <value type="token" datatypeLibrary="">default</value> <ref name="SSML.RelativeChange.datatype"/> <ref name="SSML.PitchExpression.datatype"/> </choice> </attribute> </define> <define name="ssml.rate.attrib"> <attribute name="rate" ns=""> <a:documentation>Specifies a change in the speaking rate for the contained text. The values x-slow through x-fast represent a sequence of monotonically non-decreasing speaking rates. Refer to SSML 1.1 for further information. </a:documentation> <choice> <value type="token" datatypeLibrary="">x-slow</value> <value type="token" datatypeLibrary="">slow</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">fast</value> <value type="token" datatypeLibrary="">x-fast</value> <value type="token" datatypeLibrary="">default</value> <ref name="SSML.NonNegativePercentage.datatype"/> </choice> </attribute> </define> <define name="ssml.duration.attrib"> <attribute name="duration" ns=""> <a:documentation>Specifies a value in seconds or milliseconds for the desired time to take to read the contained text. Refer to SSML 1.1 for further information. </a:documentation> <ref name="CSS.TimeValue.datatype"/> </attribute> </define> <define name="ssml.volume.attrib"> <attribute name="volume" ns=""> <a:documentation>Specifies the volume for the contained text. If omitted, the implicit value +0.0dB is assumed. Refer to SSML 1.1 for further information. </a:documentation> <choice> <value type="token" datatypeLibrary="">silent</value> <value type="token" datatypeLibrary="">x-soft</value> <value type="token" datatypeLibrary="">soft</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">loud</value> <value type="token" datatypeLibrary="">x-loud</value> <value type="token" datatypeLibrary="">default</value> <ref name="SSML.VolumeExpression.datatype"/> </choice> </attribute> </define> <define name="ssml.say-as"> <element name="say-as" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Provides information on the type of text construct contained within the element to help specify the level of detail for rendering the contained text. Refer to SSML 1.1 for further information. </a:documentation> <ref name="ssml.interpret-as.attrib"/> <optional> <ref name="ssml.format.attrib"/> </optional> <optional> <ref name="ssml.detail.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="ssml:say-as"> <sch:assert test="normalize-space(.) or *">The ssml:say-as element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.say-as.text"> <element name="say-as" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Provides information on the type of text construct contained within the element to help specify the level of detail for rendering the contained text. Refer to SSML 1.1 for further information. </a:documentation> <ref name="ssml.interpret-as.attrib"/> <optional> <ref name="ssml.format.attrib"/> </optional> <optional> <ref name="ssml.detail.attrib"/> </optional> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="ssml:say-as"> <sch:assert test="normalize-space(.) or *">The ssml:say-as element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.interpret-as.attrib"> <attribute name="interpret-as" ns=""> <a:documentation>Indicates the content type of the contained text construct. Refer to SSML 1.1 for further information. </a:documentation> <choice> <value type="token" datatypeLibrary="">date</value> <a:documentation>Indicates that the contained text is a Gregorian calendar date. </a:documentation> <value type="token" datatypeLibrary="">time</value> <a:documentation>Indicates that the contained text is a time. </a:documentation> <value type="token" datatypeLibrary="">telephone</value> <a:documentation>Indicates that the contained text is a telephone number. </a:documentation> <value type="token" datatypeLibrary="">characters</value> <a:documentation>Indicates that the enclosed text should be spoken as a series of alpha-numeric characters. </a:documentation> <value type="token" datatypeLibrary="">cardinal</value> <a:documentation>Indicates that the enclosed text is an integral or decimal number and should be spoken as a cardinal number (as opposed to an ordinal number or digit string). </a:documentation> <value type="token" datatypeLibrary="">ordinal</value> <a:documentation>Indicates that the enclosed text is an integral number and should be spoken as an ordinal number (as opposed to a cardinal number or digit string). </a:documentation> </choice> </attribute> </define> <define name="ssml.format.attrib"> <attribute name="format" ns=""> <a:documentation>In addition to ssml.interpret-as , provides further hints on the precise formatting of the contained text for content types that may have ambiguous formats. Refer to SSML 1.1 for further information. </a:documentation> </attribute> </define> <define name="ssml.detail.attrib"> <attribute name="detail" ns=""> <a:documentation>Indicates the level of detail to be read aloud or rendered. Refer to SSML 1.1 for further information. </a:documentation> </attribute> </define> <define name="ssml.sub"> <element name="sub" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Indicates that the text in the alias attribute value replaces the contained text for pronunciation. Refer to SSML 1.1 for further information. </a:documentation> <ref name="ssml.alias.attrib"/> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="ssml:sub"> <sch:assert test="normalize-space(.) or *">The ssml:sub element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.alias.attrib"> <attribute name="alias" ns=""> <a:documentation>Specifies the string to be spoken instead of the string in the sub element. Refer to SSML 1.1 for further information. </a:documentation> </attribute> </define> <define name="ssml.sub.text"> <element name="sub" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Indicates that the text in the alias attribute value replaces the contained text for pronunciation. Refer to SSML 1.1 for further information. </a:documentation> <ref name="ssml.alias.attrib"/> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="ssml:sub"> <sch:assert test="normalize-space(.) or *">The ssml:sub element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.token"> <element name="token" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Indicates that the content is a token in order to to eliminate token (word) segmentation ambiguities of a synthesis processor. Refer to SSML 1.1 for further information. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="ssml:token"> <sch:assert test="normalize-space(.) or *">The ssml:token element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.token.text"> <element name="token" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Indicates that the content is a token in order to to eliminate token (word) segmentation ambiguities of a synthesis processor. Refer to SSML 1.1 for further information. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="ssml:token"> <sch:assert test="normalize-space(.) or *">The ssml:token element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="ssml.lexicon"> <element name="lexicon" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Specifies a reference to a lexicon document. Refer to SSML 1.1 for further information. </a:documentation> <ref name="ssml.lexicon.uri.attrib"/> <ref name="xml.id.attrib"/> <optional> <ref name="ssml.lexicon.type.attrib"/> </optional> </element> </define> <define name="ssml.lexicon.uri.attrib"> <attribute name="uri" ns=""> <a:documentation>Identifies the location of the lexicon document. Refer to SSML 1.1 for further information. </a:documentation> <ref name="URI.datatype"/> </attribute> </define> <define name="ssml.lexicon.type.attrib"> <attribute name="type" ns=""> <a:documentation>Specifies the media type of the lexicon document. The implicit value of this attribute is application/pls+xml, the media type associated with the Pronunciation Lexicon Specification . Refer to SSML 1.1 for further information. </a:documentation> <choice> <value type="token" datatypeLibrary="">application/pls+xml</value> <ref name="MediaType.datatype"/> </choice> </attribute> </define> <define name="ssml.ph.ns.attrib"> <attribute name="ph" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Specifies a phonemic/phonetic pronunciation for the text contained in the current element. This attribute inherits the semantics of the ssml.ph attribute on the SSML ssml.phoneme element. Note that this attribute is namespace qualified and intended for use on non-SSML namespace elements, as opposed to the default (non-qualified) ssml.ph attribute, which is only allowed on the ssml.phoneme element. Consult Speech Synthesis Markup Language (SSML) Version 1.1 for further information. </a:documentation> <text/> <sch:rule context="*[@ssml:ph]"> <sch:assert test="not(descendant::ssml:phoneme) and not(descendant::*[@ssml:ph])">Elements with the ssml:ph attribute element must not have ssml:phoneme descendants, nor descendants with the ssml:ph attribute. </sch:assert> <sch:assert test="string-length(normalize-space(@ssml:ph)) > 0">The ssml:ph attribute element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </attribute> </define> <define name="ssml.alphabet.ns.attrib"> <attribute name="alphabet" ns="http://www.w3.org/2001/10/synthesis"> <a:documentation>Specifies which phonemic/phonetic pronunciation alphabet is used in the value of the ssml.ph.ns attribute. Note that this attribute is namespace qualified and intended for use on non-SSML namespace elements in conjunction with the ssml.ph.ns attribute. If omitted, the implicit value x-SAMPA is assumed. Consult Speech Synthesis Markup Language (SSML) Version 1.1 for further information. </a:documentation> <choice> <value type="token" datatypeLibrary="">ipa</value> <a:documentation>The pronunciation alphabet is IPA . </a:documentation> <value type="token" datatypeLibrary="">x-SAMPA</value> <a:documentation>The pronunciation alphabet is X-SAMPA . </a:documentation> <text/> </choice> </attribute> </define> <define name="SSML.RelativeChange.datatype"> <a:documentation>A relative change expression, as defined in relative change . </a:documentation> <data type="normalizedString" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">[\-+]?([0-9]+(\.[0-9]*)?|\.[0-9]+)(%|st|Hz)</param> </data> </define> <define name="SSML.PitchExpression.datatype"> <a:documentation>A number followed by the string 'Hz'. </a:documentation> <data type="normalizedString" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">[\-+]?([0-9]+(\.[0-9]*)?|\.[0-9]+)Hz</param> </data> </define> <define name="SSML.PitchContour.datatype"> <a:documentation>A pitch contour expression, as defined in pitch contour . </a:documentation> <data type="normalizedString" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">\(([\-+]?([0-9]+(\.[0-9]*)?|\.[0-9]+)%), ?([\-+]?([0-9]+(\.[0-9]*)?|\.[0-9]+)Hz)\)(,\s*\(([\-+]?([0-9]+(\.[0-9]*)?|\.[0-9]+)%), ?([\-+]?([0-9]+(\.[0-9]*)?|\.[0-9]+)Hz)\))*</param> </data> </define> <define name="SSML.NonNegativePercentage.datatype"> <a:documentation>An unsigned number immediately followed by "%", as defined in Non-negative percentage . </a:documentation> <data type="normalizedString" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">([0-9]+(\.[0-9]*)?|\.[0-9]+)%</param> </data> </define> <define name="SSML.VolumeExpression.datatype"> <a:documentation>A number preceded by "+" or "-" and immediately followed by "dB", as defined in prosody Element . </a:documentation> <data type="normalizedString" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">[\-+]?([0-9]+(\.[0-9]*)?|\.[0-9]+)dB|silent|((x-)?(loud|soft))|medium|default</param> </data> </define> <define name="its-ruby"> <element name="ruby" ns="http://www.w3.org/2005/11/its"> <a:documentation>The container for ruby markup declarations. The its:ruby element contains either simple or complex ruby markup. Refer to ITS Ruby for further information. </a:documentation> <a:documentation>Ruby markup. </a:documentation> <choice> <group> <ref name="its-rb"/> <choice> <ref name="its-rt"/> <group> <ref name="its-rp"/> <ref name="its-rt"/> <ref name="its-rp"/> </group> </choice> </group> <group> <ref name="its-rbc"/> <ref name="its-rtc"/> <optional> <ref name="its-rtc"/> </optional> </group> </choice> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> </element> </define> <define name="its-rb"> <element name="rb" ns="http://www.w3.org/2005/11/its"> <a:documentation>Contains the base text. Refer to ITS Ruby for further information. </a:documentation> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <sch:rule context="its:rb"> <sch:assert test="not(descendant::its:ruby)">The its:rb element must not contain its:ruby descendants. </sch:assert> </sch:rule> </element> </define> <define name="its-rt"> <element name="rt" ns="http://www.w3.org/2005/11/its"> <a:documentation>Contains the ruby text. Refer to ITS Ruby for further information. </a:documentation> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> <optional> <ref name="its.rbspan.attrib"/> </optional> <sch:rule context="its:rt"> <sch:assert test="not(descendant::its:ruby)">The its:rt element must not contain its:ruby descendants. </sch:assert> </sch:rule> </element> </define> <define name="its.rbspan.attrib"> <attribute name="rbspan" ns=""> <a:documentation>Allows an its:rt element to span multiple its:rb elements in complex ruby markup . If omitted, the implicit value 1 is assumed.. Refer to ITS Ruby for further information. </a:documentation> <ref name="NonNegativeInteger.datatype"/> <sch:rule context="its:rt[@rbspan]"> <sch:assert test="not(parent::its:ruby)">The rbspan attribute must not be used on the its:rt element in simple ruby markup. </sch:assert> </sch:rule> </attribute> </define> <define name="its-rbc"> <element name="rbc" ns="http://www.w3.org/2005/11/its"> <a:documentation>Container for its:rb elements in complex ruby markup . Refer to ITS Ruby for further information. </a:documentation> <oneOrMore> <ref name="its-rb"/> </oneOrMore> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> </element> </define> <define name="its-rtc"> <element name="rtc" ns="http://www.w3.org/2005/11/its"> <a:documentation>Container for its:rt elements in complex ruby markup . Refer to ITS Ruby for further information. </a:documentation> <oneOrMore> <ref name="its-rt"/> </oneOrMore> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> </element> </define> <define name="its-rp"> <element name="rp" ns="http://www.w3.org/2005/11/its"> <a:documentation>Ruby text beginning and end marker This element is used in the case of simple ruby markup to specify characters that denote the beginning and end of ruby text when user agents do not have other ways to present ruby text distinctively from the base text. Refer to ITS Ruby for further information. </a:documentation> <text/> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> </element> </define> <define name="cn"> <element name="cn" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="cn.attributes.type"/> </optional> <optional> <ref name="base"/> </optional> <zeroOrMore> <choice> <text/> <ref name="mglyph"/> <ref name="sep"/> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> </choice> </zeroOrMore> </element> </define> <define name="cn.attributes.type"> <attribute name="type" ns=""/> </define> <define name="semantics-ci"> <element name="semantics" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="cd"/> </optional> <optional> <ref name="name"/> </optional> <choice> <ref name="ci"/> <ref name="semantics-ci"/> </choice> <zeroOrMore> <choice> <ref name="annotation"/> <ref name="annotation-xml"/> </choice> </zeroOrMore> </element> </define> <define name="semantics-contexp"> <element name="semantics" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="cd"/> </optional> <optional> <ref name="name"/> </optional> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> <zeroOrMore> <choice> <ref name="annotation"/> <ref name="annotation-xml"/> </choice> </zeroOrMore> </element> </define> <define name="ci"> <element name="ci" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="ci.type"/> </optional> <zeroOrMore> <choice> <text/> <ref name="mglyph"/> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> </choice> </zeroOrMore> </element> </define> <define name="ci.type"> <attribute name="type" ns=""/> </define> <define name="csymbol"> <element name="csymbol" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="csymbol.attributes.type"/> </optional> <optional> <ref name="cd"/> </optional> <zeroOrMore> <choice> <text/> <ref name="mglyph"/> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> </choice> </zeroOrMore> </element> </define> <define name="csymbol.attributes.type"> <attribute name="type" ns=""/> </define> <define name="bvar"> <element name="bvar" ns="http://www.w3.org/1998/Math/MathML"> <interleave> <choice> <ref name="ci"/> <ref name="semantics-ci"/> </choice> <optional> <ref name="degree"/> </optional> </interleave> </element> </define> <define name="apply"> <element name="apply" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </oneOrMore> <group> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> <zeroOrMore> <ref name="bvar"/> </zeroOrMore> <zeroOrMore> <choice> <zeroOrMore> <choice> <ref name="domainofapplication"/> <ref name="condition"/> <ref name="interval"/> <group> <ref name="lowlimit"/> <optional> <ref name="uplimit"/> </optional> </group> </choice> </zeroOrMore> <ref name="degree"/> <ref name="momentabout"/> <ref name="logbase"/> </choice> </zeroOrMore> <zeroOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </zeroOrMore> </group> </choice> </element> </define> <define name="bind"> <element name="bind" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </oneOrMore> <group> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> <zeroOrMore> <ref name="bvar"/> </zeroOrMore> <zeroOrMore> <choice> <zeroOrMore> <choice> <ref name="domainofapplication"/> <ref name="condition"/> <ref name="interval"/> <group> <ref name="lowlimit"/> <optional> <ref name="uplimit"/> </optional> </group> </choice> </zeroOrMore> <ref name="degree"/> <ref name="momentabout"/> <ref name="logbase"/> </choice> </zeroOrMore> <zeroOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </zeroOrMore> </group> </choice> </element> </define> <define name="share"> <element name="share" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <ref name="src"/> </element> </define> <define name="cerror"> <element name="cerror" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <ref name="csymbol"/> <zeroOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </zeroOrMore> </element> </define> <define name="cbytes"> <element name="cbytes" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <ref name="base64"/> </element> </define> <define name="base64"> <data type="base64Binary" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="cs"> <element name="cs" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <text/> </element> </define> <define name="base"> <attribute name="base" ns=""/> </define> <define name="sep"> <element name="sep" ns="http://www.w3.org/1998/Math/MathML"> <empty/> </element> </define> <define name="domainofapplication"> <element name="domainofapplication" ns="http://www.w3.org/1998/Math/MathML"> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="condition"> <element name="condition" ns="http://www.w3.org/1998/Math/MathML"> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="uplimit"> <element name="uplimit" ns="http://www.w3.org/1998/Math/MathML"> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="lowlimit"> <element name="lowlimit" ns="http://www.w3.org/1998/Math/MathML"> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="degree"> <element name="degree" ns="http://www.w3.org/1998/Math/MathML"> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="momentabout"> <element name="momentabout" ns="http://www.w3.org/1998/Math/MathML"> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="logbase"> <element name="logbase" ns="http://www.w3.org/1998/Math/MathML"> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="type"> <attribute name="type" ns=""/> </define> <define name="order"> <attribute name="order" ns=""> <choice> <value type="token" datatypeLibrary="">numeric</value> <value type="token" datatypeLibrary="">lexicographic</value> </choice> </attribute> </define> <define name="closure"> <attribute name="closure" ns=""/> </define> <define name="piecewise"> <element name="piecewise" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <interleave> <zeroOrMore> <ref name="piece"/> </zeroOrMore> <optional> <ref name="otherwise"/> </optional> </interleave> </element> </define> <define name="piece"> <element name="piece" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="otherwise"> <element name="otherwise" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="interval"> <element name="interval" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="closure"/> </optional> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="inverse"> <element name="inverse" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="ident"> <element name="ident" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="domain"> <element name="domain" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="codomain"> <element name="codomain" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="image"> <element name="image" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="ln"> <element name="ln" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="log"> <element name="log" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="moment"> <element name="moment" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="lambda"> <element name="lambda" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <zeroOrMore> <ref name="bvar"/> </zeroOrMore> <zeroOrMore> <choice> <ref name="domainofapplication"/> <ref name="condition"/> <ref name="interval"/> <group> <ref name="lowlimit"/> <optional> <ref name="uplimit"/> </optional> </group> </choice> </zeroOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </element> </define> <define name="compose"> <element name="compose" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="quotient"> <element name="quotient" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="divide"> <element name="divide" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="minus"> <element name="minus" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="power"> <element name="power" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="rem"> <element name="rem" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="root"> <element name="root" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="factorial"> <element name="factorial" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="abs"> <element name="abs" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="conjugate"> <element name="conjugate" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arg"> <element name="arg" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="real"> <element name="real" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="imaginary"> <element name="imaginary" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="floor"> <element name="floor" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="ceiling"> <element name="ceiling" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="exp"> <element name="exp" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="max"> <element name="max" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="min"> <element name="min" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="plus"> <element name="plus" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="times"> <element name="times" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="gcd"> <element name="gcd" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="lcm"> <element name="lcm" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="and"> <element name="and" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="or"> <element name="or" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="xor"> <element name="xor" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="not"> <element name="not" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="implies"> <element name="implies" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="equivalent"> <element name="equivalent" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="forall"> <element name="forall" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="exists"> <element name="exists" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="eq"> <element name="eq" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="gt"> <element name="gt" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="lt"> <element name="lt" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="geq"> <element name="geq" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="leq"> <element name="leq" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="neq"> <element name="neq" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="approx"> <element name="approx" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="factorof"> <element name="factorof" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="tendsto"> <element name="tendsto" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="type"/> </optional> </element> </define> <define name="int"> <element name="int" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="diff"> <element name="diff" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="partialdiff"> <element name="partialdiff" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="divergence"> <element name="divergence" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="grad"> <element name="grad" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="curl"> <element name="curl" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="laplacian"> <element name="laplacian" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="set"> <element name="set" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="type"/> </optional> <zeroOrMore> <ref name="bvar"/> </zeroOrMore> <zeroOrMore> <choice> <ref name="domainofapplication"/> <ref name="condition"/> <ref name="interval"/> <group> <ref name="lowlimit"/> <optional> <ref name="uplimit"/> </optional> </group> </choice> </zeroOrMore> <zeroOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </zeroOrMore> </element> </define> <define name="list"> <element name="list" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="order"/> </optional> <zeroOrMore> <ref name="bvar"/> </zeroOrMore> <zeroOrMore> <choice> <ref name="domainofapplication"/> <ref name="condition"/> <ref name="interval"/> <group> <ref name="lowlimit"/> <optional> <ref name="uplimit"/> </optional> </group> </choice> </zeroOrMore> <zeroOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </zeroOrMore> </element> </define> <define name="union"> <element name="union" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="intersect"> <element name="intersect" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="cartesianproduct"> <element name="cartesianproduct" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="in"> <element name="in" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="notin"> <element name="notin" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="notsubset"> <element name="notsubset" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="notprsubset"> <element name="notprsubset" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="setdiff"> <element name="setdiff" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="subset"> <element name="subset" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="prsubset"> <element name="prsubset" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="card"> <element name="card" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="sum"> <element name="sum" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="product"> <element name="product" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="limit"> <element name="limit" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="sin"> <element name="sin" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="cos"> <element name="cos" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="tan"> <element name="tan" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="sec"> <element name="sec" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="csc"> <element name="csc" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="cot"> <element name="cot" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="sinh"> <element name="sinh" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="cosh"> <element name="cosh" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="tanh"> <element name="tanh" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="sech"> <element name="sech" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="csch"> <element name="csch" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="coth"> <element name="coth" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arcsin"> <element name="arcsin" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arccos"> <element name="arccos" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arctan"> <element name="arctan" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arccosh"> <element name="arccosh" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arccot"> <element name="arccot" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arccoth"> <element name="arccoth" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arccsc"> <element name="arccsc" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arccsch"> <element name="arccsch" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arcsec"> <element name="arcsec" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arcsech"> <element name="arcsech" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arcsinh"> <element name="arcsinh" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="arctanh"> <element name="arctanh" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="mean"> <element name="mean" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="sdev"> <element name="sdev" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="variance"> <element name="variance" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="median"> <element name="median" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="mode"> <element name="mode" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="vector"> <element name="vector" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <zeroOrMore> <ref name="bvar"/> </zeroOrMore> <zeroOrMore> <choice> <ref name="domainofapplication"/> <ref name="condition"/> <ref name="interval"/> <group> <ref name="lowlimit"/> <optional> <ref name="uplimit"/> </optional> </group> </choice> </zeroOrMore> <zeroOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </zeroOrMore> </element> </define> <define name="matrix"> <element name="matrix" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <zeroOrMore> <ref name="bvar"/> </zeroOrMore> <zeroOrMore> <choice> <ref name="domainofapplication"/> <ref name="condition"/> <ref name="interval"/> <group> <ref name="lowlimit"/> <optional> <ref name="uplimit"/> </optional> </group> </choice> </zeroOrMore> <zeroOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </zeroOrMore> </element> </define> <define name="matrixrow"> <element name="matrixrow" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <zeroOrMore> <ref name="bvar"/> </zeroOrMore> <zeroOrMore> <choice> <ref name="domainofapplication"/> <ref name="condition"/> <ref name="interval"/> <group> <ref name="lowlimit"/> <optional> <ref name="uplimit"/> </optional> </group> </choice> </zeroOrMore> <zeroOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </zeroOrMore> </element> </define> <define name="determinant"> <element name="determinant" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="transpose"> <element name="transpose" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="selector"> <element name="selector" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="vectorproduct"> <element name="vectorproduct" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="scalarproduct"> <element name="scalarproduct" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="outerproduct"> <element name="outerproduct" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="integers"> <element name="integers" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="reals"> <element name="reals" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="rationals"> <element name="rationals" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="naturalnumbers"> <element name="naturalnumbers" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="complexes"> <element name="complexes" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="primes"> <element name="primes" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="emptyset"> <element name="emptyset" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="exponentiale"> <element name="exponentiale" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="imaginaryi"> <element name="imaginaryi" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="notanumber"> <element name="notanumber" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="true"> <element name="true" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="false"> <element name="false" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="pi"> <element name="pi" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="eulergamma"> <element name="eulergamma" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="infinity"> <element name="infinity" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> </element> </define> <define name="mpadded-length"> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">\s*([\+\-]?[0-9]*(\.[0-9]*)?\s*((%?\s*(height|depth|width)?)|e[mx]|in|cm|mm|p[xtc]|((negative)?((very){0,2}thi(n|ck)|medium)mathspace)))\s*</param> </data> </define> <define name="unsigned-integer"> <data type="unsignedLong" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="integer"> <data type="integer" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="number"> <data type="decimal" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="character"> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">\s*\S\s*</param> </data> </define> <define name="color"> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">\s*((#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?)|[aA][qQ][uU][aA]|[bB][lL][aA][cC][kK]|[bB][lL][uU][eE]|[fF][uU][cC][hH][sS][iI][aA]|[gG][rR][aA][yY]|[gG][rR][eE][eE][nN]|[lL][iI][mM][eE]|[mM][aA][rR][oO][oO][nN]|[nN][aA][vV][yY]|[oO][lL][iI][vV][eE]|[pP][uU][rR][pP][lL][eE]|[rR][eE][dD]|[sS][iI][lL][vV][eE][rR]|[tT][eE][aA][lL]|[wW][hH][iI][tT][eE]|[yY][eE][lL][lL][oO][wW])\s*</param> </data> </define> <define name="group-alignment-list-list"> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">(\s*\{\s*(left|center|right|decimalpoint)(\s+(left|center|right|decimalpoint))*\})*\s*</param> </data> </define> <define name="positive-integer"> <data type="positiveInteger" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="mi"> <element name="mi" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="TokenAtt.mathvariant"/> </optional> <optional> <ref name="TokenAtt.mathsize"/> </optional> <optional> <ref name="TokenAtt.dir"/> </optional> <zeroOrMore> <choice> <ref name="mglyph"/> <ref name="malignmark"/> <text/> </choice> </zeroOrMore> </element> </define> <define name="mn"> <element name="mn" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="TokenAtt.mathvariant"/> </optional> <optional> <ref name="TokenAtt.mathsize"/> </optional> <optional> <ref name="TokenAtt.dir"/> </optional> <zeroOrMore> <choice> <ref name="mglyph"/> <ref name="malignmark"/> <text/> </choice> </zeroOrMore> </element> </define> <define name="mo"> <element name="mo" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="TokenAtt.mathvariant"/> </optional> <optional> <ref name="TokenAtt.mathsize"/> </optional> <optional> <ref name="TokenAtt.dir"/> </optional> <optional> <ref name="mo.attributes.form"/> </optional> <optional> <ref name="mo.attributes.fence"/> </optional> <optional> <ref name="mo.attributes.separator"/> </optional> <optional> <ref name="mo.attributes.lspace"/> </optional> <optional> <ref name="mo.attributes.rspace"/> </optional> <optional> <ref name="mo.attributes.stretchy"/> </optional> <optional> <ref name="mo.attributes.symmetric"/> </optional> <optional> <ref name="mo.attributes.maxsize"/> </optional> <optional> <ref name="mo.attributes.minsize"/> </optional> <optional> <ref name="mo.attributes.largeop"/> </optional> <optional> <ref name="mo.attributes.movablelimits"/> </optional> <optional> <ref name="mo.attributes.accent"/> </optional> <optional> <ref name="mo.attributes.linebreak"/> </optional> <optional> <ref name="mo.attributes.lineleading"/> </optional> <optional> <ref name="mo.attributes.linebreakstyle"/> </optional> <optional> <ref name="mo.attributes.linebreakmultchar"/> </optional> <optional> <ref name="mo.attributes.indentalign"/> </optional> <optional> <ref name="mo.attributes.indentshift"/> </optional> <optional> <ref name="mo.attributes.indenttarget"/> </optional> <optional> <ref name="mo.attributes.indentalignfirst"/> </optional> <optional> <ref name="mo.attributes.indentshiftfirst"/> </optional> <optional> <ref name="mo.attributes.indentalignlast"/> </optional> <optional> <ref name="mo.attributes.indentshiftlast"/> </optional> <zeroOrMore> <choice> <ref name="mglyph"/> <ref name="malignmark"/> <text/> </choice> </zeroOrMore> </element> </define> <define name="mo.attributes.form"> <attribute name="form" ns=""> <choice> <value type="token" datatypeLibrary="">prefix</value> <value type="token" datatypeLibrary="">infix</value> <value type="token" datatypeLibrary="">postfix</value> </choice> </attribute> </define> <define name="mo.attributes.fence"> <attribute name="fence" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mo.attributes.separator"> <attribute name="separator" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mo.attributes.lspace"> <attribute name="lspace" ns=""> <ref name="length"/> </attribute> </define> <define name="mo.attributes.rspace"> <attribute name="rspace" ns=""> <ref name="length"/> </attribute> </define> <define name="mo.attributes.stretchy"> <attribute name="stretchy" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mo.attributes.symmetric"> <attribute name="symmetric" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mo.attributes.maxsize"> <attribute name="maxsize" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">infinity</value> </choice> </attribute> </define> <define name="mo.attributes.minsize"> <attribute name="minsize" ns=""> <ref name="length"/> </attribute> </define> <define name="mo.attributes.largeop"> <attribute name="largeop" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mo.attributes.movablelimits"> <attribute name="movablelimits" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mo.attributes.accent"> <attribute name="accent" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mo.attributes.linebreak"> <attribute name="linebreak" ns=""> <choice> <value type="token" datatypeLibrary="">auto</value> <value type="token" datatypeLibrary="">newline</value> <value type="token" datatypeLibrary="">nobreak</value> <value type="token" datatypeLibrary="">goodbreak</value> <value type="token" datatypeLibrary="">badbreak</value> </choice> </attribute> </define> <define name="mo.attributes.lineleading"> <attribute name="lineleading" ns=""> <ref name="length"/> </attribute> </define> <define name="mo.attributes.linebreakstyle"> <attribute name="linebreakstyle" ns=""> <choice> <value type="token" datatypeLibrary="">before</value> <value type="token" datatypeLibrary="">after</value> <value type="token" datatypeLibrary="">duplicate</value> <value type="token" datatypeLibrary="">infixlinebreakstyle</value> </choice> </attribute> </define> <define name="mo.attributes.linebreakmultchar"> <attribute name="linebreakmultchar" ns=""/> </define> <define name="mo.attributes.indentalign"> <attribute name="indentalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">auto</value> <value type="token" datatypeLibrary="">id</value> </choice> </attribute> </define> <define name="mo.attributes.indentshift"> <attribute name="indentshift" ns=""> <ref name="length"/> </attribute> </define> <define name="mo.attributes.indenttarget"> <attribute name="indenttarget" ns=""> <text/> </attribute> </define> <define name="mo.attributes.indentalignfirst"> <attribute name="indentalignfirst" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">auto</value> <value type="token" datatypeLibrary="">id</value> <value type="token" datatypeLibrary="">indentalign</value> </choice> </attribute> </define> <define name="mo.attributes.indentshiftfirst"> <attribute name="indentshiftfirst" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">indentshift</value> </choice> </attribute> </define> <define name="mo.attributes.indentalignlast"> <attribute name="indentalignlast" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">auto</value> <value type="token" datatypeLibrary="">id</value> <value type="token" datatypeLibrary="">indentalign</value> </choice> </attribute> </define> <define name="mo.attributes.indentshiftlast"> <attribute name="indentshiftlast" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">indentshift</value> </choice> </attribute> </define> <define name="mtext"> <element name="mtext" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="TokenAtt.mathvariant"/> </optional> <optional> <ref name="TokenAtt.mathsize"/> </optional> <optional> <ref name="TokenAtt.dir"/> </optional> <zeroOrMore> <choice> <ref name="mglyph"/> <ref name="malignmark"/> <text/> </choice> </zeroOrMore> </element> </define> <define name="mspace"> <element name="mspace" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="TokenAtt.mathvariant"/> </optional> <optional> <ref name="TokenAtt.mathsize"/> </optional> <optional> <ref name="TokenAtt.dir"/> </optional> <optional> <ref name="mspace.attributes.width"/> </optional> <optional> <ref name="mspace.attributes.height"/> </optional> <optional> <ref name="mspace.attributes.depth"/> </optional> <optional> <ref name="mspace.attributes.linebreak"/> </optional> </element> </define> <define name="mspace.attributes.width"> <attribute name="width" ns=""> <ref name="length"/> </attribute> </define> <define name="mspace.attributes.height"> <attribute name="height" ns=""> <ref name="length"/> </attribute> </define> <define name="mspace.attributes.depth"> <attribute name="depth" ns=""> <ref name="length"/> </attribute> </define> <define name="mspace.attributes.linebreak"> <attribute name="linebreak" ns=""> <choice> <value type="token" datatypeLibrary="">auto</value> <value type="token" datatypeLibrary="">newline</value> <value type="token" datatypeLibrary="">nobreak</value> <value type="token" datatypeLibrary="">goodbreak</value> <value type="token" datatypeLibrary="">badbreak</value> <value type="token" datatypeLibrary="">indentingnewline</value> </choice> </attribute> </define> <define name="ms"> <element name="ms" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="TokenAtt.mathvariant"/> </optional> <optional> <ref name="TokenAtt.mathsize"/> </optional> <optional> <ref name="TokenAtt.dir"/> </optional> <optional> <ref name="ms.attributes.lquote"/> </optional> <optional> <ref name="ms.attributes.rquote"/> </optional> <zeroOrMore> <choice> <ref name="mglyph"/> <ref name="malignmark"/> <text/> </choice> </zeroOrMore> </element> </define> <define name="ms.attributes.lquote"> <attribute name="lquote" ns=""/> </define> <define name="ms.attributes.rquote"> <attribute name="rquote" ns=""/> </define> <define name="mglyph"> <element name="mglyph" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mglyph.attributes.src"/> </optional> <optional> <ref name="mglyph.attributes.width"/> </optional> <optional> <ref name="mglyph.attributes.height"/> </optional> <optional> <ref name="mglyph.attributes.valign"/> </optional> <optional> <ref name="mglyph.attributes.alt"/> </optional> </element> </define> <define name="mglyph.attributes.src"> <attribute name="src" ns=""> <data type="anyURI" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="mglyph.attributes.width"> <attribute name="width" ns=""> <ref name="length"/> </attribute> </define> <define name="mglyph.attributes.height"> <attribute name="height" ns=""> <ref name="length"/> </attribute> </define> <define name="mglyph.attributes.valign"> <attribute name="valign" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">top</value> <value type="token" datatypeLibrary="">middle</value> <value type="token" datatypeLibrary="">bottom</value> </choice> </attribute> </define> <define name="mglyph.attributes.alt"> <attribute name="alt" ns=""/> </define> <define name="msline"> <element name="msline" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="msline.attributes.position"/> </optional> <optional> <ref name="msline.attributes.length"/> </optional> <optional> <ref name="msline.attributes.leftoverhang"/> </optional> <optional> <ref name="msline.attributes.rightoverhang"/> </optional> <optional> <ref name="msline.attributes.mslinethickness"/> </optional> </element> </define> <define name="msline.attributes.position"> <attribute name="position" ns=""> <ref name="integer"/> </attribute> </define> <define name="msline.attributes.length"> <attribute name="length" ns=""> <ref name="unsigned-integer"/> </attribute> </define> <define name="msline.attributes.leftoverhang"> <attribute name="leftoverhang" ns=""> <ref name="length"/> </attribute> </define> <define name="msline.attributes.rightoverhang"> <attribute name="rightoverhang" ns=""> <ref name="length"/> </attribute> </define> <define name="msline.attributes.mslinethickness"> <attribute name="mslinethickness" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">thin</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">thick</value> </choice> </attribute> </define> <define name="none"> <element name="none" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> </element> </define> <define name="mprescripts"> <element name="mprescripts" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> </element> </define> <define name="CommonPresAtt.mathcolor"> <attribute name="mathcolor" ns=""> <ref name="color"/> </attribute> </define> <define name="CommonPresAtt.mathbackground"> <attribute name="mathbackground" ns=""> <choice> <ref name="color"/> <value type="token" datatypeLibrary="">transparent</value> </choice> </attribute> </define> <define name="TokenAtt.mathvariant"> <attribute name="mathvariant" ns=""> <choice> <value type="token" datatypeLibrary="">normal</value> <value type="token" datatypeLibrary="">bold</value> <value type="token" datatypeLibrary="">italic</value> <value type="token" datatypeLibrary="">bold-italic</value> <value type="token" datatypeLibrary="">double-struck</value> <value type="token" datatypeLibrary="">bold-fraktur</value> <value type="token" datatypeLibrary="">script</value> <value type="token" datatypeLibrary="">bold-script</value> <value type="token" datatypeLibrary="">fraktur</value> <value type="token" datatypeLibrary="">sans-serif</value> <value type="token" datatypeLibrary="">bold-sans-serif</value> <value type="token" datatypeLibrary="">sans-serif-italic</value> <value type="token" datatypeLibrary="">sans-serif-bold-italic</value> <value type="token" datatypeLibrary="">monospace</value> <value type="token" datatypeLibrary="">initial</value> <value type="token" datatypeLibrary="">tailed</value> <value type="token" datatypeLibrary="">looped</value> <value type="token" datatypeLibrary="">stretched</value> </choice> </attribute> </define> <define name="TokenAtt.mathsize"> <attribute name="mathsize" ns=""> <choice> <value type="token" datatypeLibrary="">small</value> <value type="token" datatypeLibrary="">normal</value> <value type="token" datatypeLibrary="">big</value> <ref name="length"/> </choice> </attribute> </define> <define name="TokenAtt.dir"> <attribute name="dir" ns=""> <choice> <value type="token" datatypeLibrary="">ltr</value> <value type="token" datatypeLibrary="">rtl</value> </choice> </attribute> </define> <define name="malignmark"> <element name="malignmark" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="malignmark.attributes.edge"/> </optional> </element> </define> <define name="malignmark.attributes.edge"> <attribute name="edge" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">right</value> </choice> </attribute> </define> <define name="maligngroup"> <element name="maligngroup" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="maligngroup.attributes.groupalign"/> </optional> </element> </define> <define name="maligngroup.attributes.groupalign"> <attribute name="groupalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">decimalpoint</value> </choice> </attribute> </define> <define name="mrow"> <element name="mrow" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mrow.attributes.dir"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </zeroOrMore> </element> </define> <define name="mrow.attributes.dir"> <attribute name="dir" ns=""> <choice> <value type="token" datatypeLibrary="">ltr</value> <value type="token" datatypeLibrary="">rtl</value> </choice> </attribute> </define> <define name="mfrac"> <element name="mfrac" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mfrac.attributes.linethickness"/> </optional> <optional> <ref name="mfrac.attributes.numalign"/> </optional> <optional> <ref name="mfrac.attributes.denomalign"/> </optional> <optional> <ref name="mfrac.attributes.bevelled"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </element> </define> <define name="mfrac.attributes.linethickness"> <attribute name="linethickness" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">thin</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">thick</value> </choice> </attribute> </define> <define name="mfrac.attributes.numalign"> <attribute name="numalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> </choice> </attribute> </define> <define name="mfrac.attributes.denomalign"> <attribute name="denomalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> </choice> </attribute> </define> <define name="mfrac.attributes.bevelled"> <attribute name="bevelled" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="msqrt"> <element name="msqrt" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </zeroOrMore> </element> </define> <define name="mroot"> <element name="mroot" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </element> </define> <define name="mstyle"> <element name="mstyle" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mstyle.specificattributes.scriptlevel"/> </optional> <optional> <ref name="mstyle.specificattributes.displaystyle"/> </optional> <optional> <ref name="mstyle.specificattributes.scriptsizemultiplier"/> </optional> <optional> <ref name="mstyle.specificattributes.scriptminsize"/> </optional> <optional> <ref name="mstyle.specificattributes.infixlinebreakstyle"/> </optional> <optional> <ref name="mstyle.specificattributes.decimalpoint"/> </optional> <optional> <ref name="mstyle.generalattributes.accent"/> </optional> <optional> <ref name="mstyle.generalattributes.accentunder"/> </optional> <optional> <ref name="mstyle.generalattributes.align"/> </optional> <optional> <ref name="mstyle.generalattributes.alignmentscope"/> </optional> <optional> <ref name="mstyle.generalattributes.bevelled"/> </optional> <optional> <ref name="mstyle.generalattributes.charalign"/> </optional> <optional> <ref name="mstyle.generalattributes.charspacing"/> </optional> <optional> <ref name="mstyle.generalattributes.close"/> </optional> <optional> <ref name="mstyle.generalattributes.columnalign"/> </optional> <optional> <ref name="mstyle.generalattributes.columnlines"/> </optional> <optional> <ref name="mstyle.generalattributes.columnspacing"/> </optional> <optional> <ref name="mstyle.generalattributes.columnspan"/> </optional> <optional> <ref name="mstyle.generalattributes.columnwidth"/> </optional> <optional> <ref name="mstyle.generalattributes.crossout"/> </optional> <optional> <ref name="mstyle.generalattributes.denomalign"/> </optional> <optional> <ref name="mstyle.generalattributes.depth"/> </optional> <optional> <ref name="mstyle.generalattributes.dir"/> </optional> <optional> <ref name="mstyle.generalattributes.edge"/> </optional> <optional> <ref name="mstyle.generalattributes.equalcolumns"/> </optional> <optional> <ref name="mstyle.generalattributes.equalrows"/> </optional> <optional> <ref name="mstyle.generalattributes.fence"/> </optional> <optional> <ref name="mstyle.generalattributes.form"/> </optional> <optional> <ref name="mstyle.generalattributes.frame"/> </optional> <optional> <ref name="mstyle.generalattributes.framespacing"/> </optional> <optional> <ref name="mstyle.generalattributes.groupalign"/> </optional> <optional> <ref name="mstyle.generalattributes.height"/> </optional> <optional> <ref name="mstyle.generalattributes.indentalign"/> </optional> <optional> <ref name="mstyle.generalattributes.indentalignfirst"/> </optional> <optional> <ref name="mstyle.generalattributes.indentalignlast"/> </optional> <optional> <ref name="mstyle.generalattributes.indentshift"/> </optional> <optional> <ref name="mstyle.generalattributes.indentshiftfirst"/> </optional> <optional> <ref name="mstyle.generalattributes.indentshiftlast"/> </optional> <optional> <ref name="mstyle.generalattributes.indenttarget"/> </optional> <optional> <ref name="mstyle.generalattributes.largeop"/> </optional> <optional> <ref name="mstyle.generalattributes.leftoverhang"/> </optional> <optional> <ref name="mstyle.generalattributes.length"/> </optional> <optional> <ref name="mstyle.generalattributes.linebreak"/> </optional> <optional> <ref name="mstyle.generalattributes.linebreakmultchar"/> </optional> <optional> <ref name="mstyle.generalattributes.linebreakstyle"/> </optional> <optional> <ref name="mstyle.generalattributes.lineleading"/> </optional> <optional> <ref name="mstyle.generalattributes.linethickness"/> </optional> <optional> <ref name="mstyle.generalattributes.location"/> </optional> <optional> <ref name="mstyle.generalattributes.longdivstyle"/> </optional> <optional> <ref name="mstyle.generalattributes.lquote"/> </optional> <optional> <ref name="mstyle.generalattributes.lspace"/> </optional> <optional> <ref name="mstyle.generalattributes.mathsize"/> </optional> <optional> <ref name="mstyle.generalattributes.mathvariant"/> </optional> <optional> <ref name="mstyle.generalattributes.maxsize"/> </optional> <optional> <ref name="mstyle.generalattributes.minlabelspacing"/> </optional> <optional> <ref name="mstyle.generalattributes.minsize"/> </optional> <optional> <ref name="mstyle.generalattributes.movablelimits"/> </optional> <optional> <ref name="mstyle.generalattributes.mslinethickness"/> </optional> <optional> <ref name="mstyle.generalattributes.notation"/> </optional> <optional> <ref name="mstyle.generalattributes.numalign"/> </optional> <optional> <ref name="mstyle.generalattributes.open"/> </optional> <optional> <ref name="mstyle.generalattributes.position"/> </optional> <optional> <ref name="mstyle.generalattributes.rightoverhang"/> </optional> <optional> <ref name="mstyle.generalattributes.rowalign"/> </optional> <optional> <ref name="mstyle.generalattributes.rowlines"/> </optional> <optional> <ref name="mstyle.generalattributes.rowspacing"/> </optional> <optional> <ref name="mstyle.generalattributes.rowspan"/> </optional> <optional> <ref name="mstyle.generalattributes.rquote"/> </optional> <optional> <ref name="mstyle.generalattributes.rspace"/> </optional> <optional> <ref name="mstyle.generalattributes.selection"/> </optional> <optional> <ref name="mstyle.generalattributes.separator"/> </optional> <optional> <ref name="mstyle.generalattributes.separators"/> </optional> <optional> <ref name="mstyle.generalattributes.shift"/> </optional> <optional> <ref name="mstyle.generalattributes.side"/> </optional> <optional> <ref name="mstyle.generalattributes.stackalign"/> </optional> <optional> <ref name="mstyle.generalattributes.stretchy"/> </optional> <optional> <ref name="mstyle.generalattributes.subscriptshift"/> </optional> <optional> <ref name="mstyle.generalattributes.superscriptshift"/> </optional> <optional> <ref name="mstyle.generalattributes.symmetric"/> </optional> <optional> <ref name="mstyle.generalattributes.valign"/> </optional> <optional> <ref name="mstyle.generalattributes.width"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </zeroOrMore> </element> </define> <define name="mstyle.specificattributes.scriptlevel"> <attribute name="scriptlevel" ns=""> <ref name="integer"/> </attribute> </define> <define name="mstyle.specificattributes.displaystyle"> <attribute name="displaystyle" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.specificattributes.scriptsizemultiplier"> <attribute name="scriptsizemultiplier" ns=""> <ref name="number"/> </attribute> </define> <define name="mstyle.specificattributes.scriptminsize"> <attribute name="scriptminsize" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.specificattributes.infixlinebreakstyle"> <attribute name="infixlinebreakstyle" ns=""> <choice> <value type="token" datatypeLibrary="">before</value> <value type="token" datatypeLibrary="">after</value> <value type="token" datatypeLibrary="">duplicate</value> </choice> </attribute> </define> <define name="mstyle.specificattributes.decimalpoint"> <attribute name="decimalpoint" ns=""> <ref name="character"/> </attribute> </define> <define name="mstyle.generalattributes.accent"> <attribute name="accent" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.accentunder"> <attribute name="accentunder" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.align"> <attribute name="align" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">center</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.alignmentscope"> <attribute name="alignmentscope" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mstyle.generalattributes.bevelled"> <attribute name="bevelled" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.charalign"> <attribute name="charalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.charspacing"> <attribute name="charspacing" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">loose</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">tight</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.close"> <attribute name="close" ns=""/> </define> <define name="mstyle.generalattributes.columnalign"> <attribute name="columnalign" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mstyle.generalattributes.columnlines"> <attribute name="columnlines" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">solid</value> <value type="token" datatypeLibrary="">dashed</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mstyle.generalattributes.columnspacing"> <attribute name="columnspacing" ns=""> <list> <oneOrMore> <ref name="length"/> </oneOrMore> </list> </attribute> </define> <define name="mstyle.generalattributes.columnspan"> <attribute name="columnspan" ns=""> <ref name="positive-integer"/> </attribute> </define> <define name="mstyle.generalattributes.columnwidth"> <attribute name="columnwidth" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">auto</value> <ref name="length"/> <value type="token" datatypeLibrary="">fit</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mstyle.generalattributes.crossout"> <attribute name="crossout" ns=""> <list> <zeroOrMore> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">updiagonalstrike</value> <value type="token" datatypeLibrary="">downdiagonalstrike</value> <value type="token" datatypeLibrary="">verticalstrike</value> <value type="token" datatypeLibrary="">horizontalstrike</value> </choice> </zeroOrMore> </list> </attribute> </define> <define name="mstyle.generalattributes.denomalign"> <attribute name="denomalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.depth"> <attribute name="depth" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.dir"> <attribute name="dir" ns=""> <choice> <value type="token" datatypeLibrary="">ltr</value> <value type="token" datatypeLibrary="">rtl</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.edge"> <attribute name="edge" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">right</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.equalcolumns"> <attribute name="equalcolumns" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.equalrows"> <attribute name="equalrows" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.fence"> <attribute name="fence" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.form"> <attribute name="form" ns=""> <choice> <value type="token" datatypeLibrary="">prefix</value> <value type="token" datatypeLibrary="">infix</value> <value type="token" datatypeLibrary="">postfix</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.frame"> <attribute name="frame" ns=""> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">solid</value> <value type="token" datatypeLibrary="">dashed</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.framespacing"> <attribute name="framespacing" ns=""> <list> <ref name="length"/> <ref name="length"/> </list> </attribute> </define> <define name="mstyle.generalattributes.groupalign"> <attribute name="groupalign" ns=""> <ref name="group-alignment-list-list"/> </attribute> </define> <define name="mstyle.generalattributes.height"> <attribute name="height" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.indentalign"> <attribute name="indentalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">auto</value> <value type="token" datatypeLibrary="">id</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.indentalignfirst"> <attribute name="indentalignfirst" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">auto</value> <value type="token" datatypeLibrary="">id</value> <value type="token" datatypeLibrary="">indentalign</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.indentalignlast"> <attribute name="indentalignlast" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">auto</value> <value type="token" datatypeLibrary="">id</value> <value type="token" datatypeLibrary="">indentalign</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.indentshift"> <attribute name="indentshift" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.indentshiftfirst"> <attribute name="indentshiftfirst" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">indentshift</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.indentshiftlast"> <attribute name="indentshiftlast" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">indentshift</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.indenttarget"> <attribute name="indenttarget" ns=""> <text/> </attribute> </define> <define name="mstyle.generalattributes.largeop"> <attribute name="largeop" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.leftoverhang"> <attribute name="leftoverhang" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.length"> <attribute name="length" ns=""> <ref name="unsigned-integer"/> </attribute> </define> <define name="mstyle.generalattributes.linebreak"> <attribute name="linebreak" ns=""> <choice> <value type="token" datatypeLibrary="">auto</value> <value type="token" datatypeLibrary="">newline</value> <value type="token" datatypeLibrary="">nobreak</value> <value type="token" datatypeLibrary="">goodbreak</value> <value type="token" datatypeLibrary="">badbreak</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.linebreakmultchar"> <attribute name="linebreakmultchar" ns=""/> </define> <define name="mstyle.generalattributes.linebreakstyle"> <attribute name="linebreakstyle" ns=""> <choice> <value type="token" datatypeLibrary="">before</value> <value type="token" datatypeLibrary="">after</value> <value type="token" datatypeLibrary="">duplicate</value> <value type="token" datatypeLibrary="">infixlinebreakstyle</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.lineleading"> <attribute name="lineleading" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.linethickness"> <attribute name="linethickness" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">thin</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">thick</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.location"> <attribute name="location" ns=""> <choice> <value type="token" datatypeLibrary="">w</value> <value type="token" datatypeLibrary="">nw</value> <value type="token" datatypeLibrary="">n</value> <value type="token" datatypeLibrary="">ne</value> <value type="token" datatypeLibrary="">e</value> <value type="token" datatypeLibrary="">se</value> <value type="token" datatypeLibrary="">s</value> <value type="token" datatypeLibrary="">sw</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.longdivstyle"> <attribute name="longdivstyle" ns=""> <choice> <value type="token" datatypeLibrary="">lefttop</value> <value type="token" datatypeLibrary="">stackedrightright</value> <value type="token" datatypeLibrary="">mediumstackedrightright</value> <value type="token" datatypeLibrary="">shortstackedrightright</value> <value type="token" datatypeLibrary="">righttop</value> <value type="token" datatypeLibrary="">left/\right</value> <value type="token" datatypeLibrary="">left)(right</value> <value type="token" datatypeLibrary="">:right=right</value> <value type="token" datatypeLibrary="">stackedleftleft</value> <value type="token" datatypeLibrary="">stackedleftlinetop</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.lquote"> <attribute name="lquote" ns=""/> </define> <define name="mstyle.generalattributes.lspace"> <attribute name="lspace" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.mathsize"> <attribute name="mathsize" ns=""> <choice> <value type="token" datatypeLibrary="">small</value> <value type="token" datatypeLibrary="">normal</value> <value type="token" datatypeLibrary="">big</value> <ref name="length"/> </choice> </attribute> </define> <define name="mstyle.generalattributes.mathvariant"> <attribute name="mathvariant" ns=""> <choice> <value type="token" datatypeLibrary="">normal</value> <value type="token" datatypeLibrary="">bold</value> <value type="token" datatypeLibrary="">italic</value> <value type="token" datatypeLibrary="">bold-italic</value> <value type="token" datatypeLibrary="">double-struck</value> <value type="token" datatypeLibrary="">bold-fraktur</value> <value type="token" datatypeLibrary="">script</value> <value type="token" datatypeLibrary="">bold-script</value> <value type="token" datatypeLibrary="">fraktur</value> <value type="token" datatypeLibrary="">sans-serif</value> <value type="token" datatypeLibrary="">bold-sans-serif</value> <value type="token" datatypeLibrary="">sans-serif-italic</value> <value type="token" datatypeLibrary="">sans-serif-bold-italic</value> <value type="token" datatypeLibrary="">monospace</value> <value type="token" datatypeLibrary="">initial</value> <value type="token" datatypeLibrary="">tailed</value> <value type="token" datatypeLibrary="">looped</value> <value type="token" datatypeLibrary="">stretched</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.maxsize"> <attribute name="maxsize" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">infinity</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.minlabelspacing"> <attribute name="minlabelspacing" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.minsize"> <attribute name="minsize" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.movablelimits"> <attribute name="movablelimits" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.mslinethickness"> <attribute name="mslinethickness" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">thin</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">thick</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.notation"> <attribute name="notation" ns=""/> </define> <define name="mstyle.generalattributes.numalign"> <attribute name="numalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.open"> <attribute name="open" ns=""/> </define> <define name="mstyle.generalattributes.position"> <attribute name="position" ns=""> <ref name="integer"/> </attribute> </define> <define name="mstyle.generalattributes.rightoverhang"> <attribute name="rightoverhang" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.rowalign"> <attribute name="rowalign" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">top</value> <value type="token" datatypeLibrary="">bottom</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">baseline</value> <value type="token" datatypeLibrary="">axis</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mstyle.generalattributes.rowlines"> <attribute name="rowlines" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">solid</value> <value type="token" datatypeLibrary="">dashed</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mstyle.generalattributes.rowspacing"> <attribute name="rowspacing" ns=""> <list> <oneOrMore> <ref name="length"/> </oneOrMore> </list> </attribute> </define> <define name="mstyle.generalattributes.rowspan"> <attribute name="rowspan" ns=""> <ref name="positive-integer"/> </attribute> </define> <define name="mstyle.generalattributes.rquote"> <attribute name="rquote" ns=""/> </define> <define name="mstyle.generalattributes.rspace"> <attribute name="rspace" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.selection"> <attribute name="selection" ns=""> <ref name="positive-integer"/> </attribute> </define> <define name="mstyle.generalattributes.separator"> <attribute name="separator" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.separators"> <attribute name="separators" ns=""/> </define> <define name="mstyle.generalattributes.shift"> <attribute name="shift" ns=""> <ref name="integer"/> </attribute> </define> <define name="mstyle.generalattributes.side"> <attribute name="side" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">leftoverlap</value> <value type="token" datatypeLibrary="">rightoverlap</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.stackalign"> <attribute name="stackalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">decimalpoint</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.stretchy"> <attribute name="stretchy" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.subscriptshift"> <attribute name="subscriptshift" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.superscriptshift"> <attribute name="superscriptshift" ns=""> <ref name="length"/> </attribute> </define> <define name="mstyle.generalattributes.symmetric"> <attribute name="symmetric" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.valign"> <attribute name="valign" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">top</value> <value type="token" datatypeLibrary="">middle</value> <value type="token" datatypeLibrary="">bottom</value> </choice> </attribute> </define> <define name="mstyle.generalattributes.width"> <attribute name="width" ns=""> <ref name="length"/> </attribute> </define> <define name="merror"> <element name="merror" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </zeroOrMore> </element> </define> <define name="mpadded"> <element name="mpadded" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mpadded.attributes.height"/> </optional> <optional> <ref name="mpadded.attributes.depth"/> </optional> <optional> <ref name="mpadded.attributes.width"/> </optional> <optional> <ref name="mpadded.attributes.lspace"/> </optional> <optional> <ref name="mpadded.attributes.voffset"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </zeroOrMore> </element> </define> <define name="mpadded.attributes.height"> <attribute name="height" ns=""> <ref name="mpadded-length"/> </attribute> </define> <define name="mpadded.attributes.depth"> <attribute name="depth" ns=""> <ref name="mpadded-length"/> </attribute> </define> <define name="mpadded.attributes.width"> <attribute name="width" ns=""> <ref name="mpadded-length"/> </attribute> </define> <define name="mpadded.attributes.lspace"> <attribute name="lspace" ns=""> <ref name="mpadded-length"/> </attribute> </define> <define name="mpadded.attributes.voffset"> <attribute name="voffset" ns=""> <ref name="mpadded-length"/> </attribute> </define> <define name="mphantom"> <element name="mphantom" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </zeroOrMore> </element> </define> <define name="mfenced"> <element name="mfenced" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mfenced.attributes.open"/> </optional> <optional> <ref name="mfenced.attributes.close"/> </optional> <optional> <ref name="mfenced.attributes.separators"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </zeroOrMore> </element> </define> <define name="mfenced.attributes.open"> <attribute name="open" ns=""/> </define> <define name="mfenced.attributes.close"> <attribute name="close" ns=""/> </define> <define name="mfenced.attributes.separators"> <attribute name="separators" ns=""/> </define> <define name="menclose"> <element name="menclose" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="menclose.attributes.notation"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </zeroOrMore> </element> </define> <define name="menclose.attributes.notation"> <attribute name="notation" ns=""/> </define> <define name="msub"> <element name="msub" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="msub.attributes.subscriptshift"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </element> </define> <define name="msub.attributes.subscriptshift"> <attribute name="subscriptshift" ns=""> <ref name="length"/> </attribute> </define> <define name="msup"> <element name="msup" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="msup.attributes.superscriptshift"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </element> </define> <define name="msup.attributes.superscriptshift"> <attribute name="superscriptshift" ns=""> <ref name="length"/> </attribute> </define> <define name="msubsup"> <element name="msubsup" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="msubsup.attributes.subscriptshift"/> </optional> <optional> <ref name="msubsup.attributes.superscriptshift"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </element> </define> <define name="msubsup.attributes.subscriptshift"> <attribute name="subscriptshift" ns=""> <ref name="length"/> </attribute> </define> <define name="msubsup.attributes.superscriptshift"> <attribute name="superscriptshift" ns=""> <ref name="length"/> </attribute> </define> <define name="munder"> <element name="munder" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="munder.attributes.accentunder"/> </optional> <optional> <ref name="munder.attributes.align"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </element> </define> <define name="munder.attributes.accentunder"> <attribute name="accentunder" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="munder.attributes.align"> <attribute name="align" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">center</value> </choice> </attribute> </define> <define name="mover"> <element name="mover" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mover.attributes.accent"/> </optional> <optional> <ref name="mover.attributes.align"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </element> </define> <define name="mover.attributes.accent"> <attribute name="accent" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mover.attributes.align"> <attribute name="align" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">center</value> </choice> </attribute> </define> <define name="munderover"> <element name="munderover" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="munderover.attributes.accent"/> </optional> <optional> <ref name="munderover.attributes.accentunder"/> </optional> <optional> <ref name="munderover.attributes.align"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </element> </define> <define name="munderover.attributes.accent"> <attribute name="accent" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="munderover.attributes.accentunder"> <attribute name="accentunder" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="munderover.attributes.align"> <attribute name="align" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">center</value> </choice> </attribute> </define> <define name="mmultiscripts"> <element name="mmultiscripts" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="msubsup.attributes.subscriptshift"/> </optional> <optional> <ref name="msubsup.attributes.superscriptshift"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="none"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="none"/> </choice> </zeroOrMore> <optional> <ref name="mprescripts"/> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="none"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="none"/> </choice> </zeroOrMore> </optional> </element> </define> <define name="mtable"> <element name="mtable" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mtable.attributes.align"/> </optional> <optional> <ref name="mtable.attributes.rowalign"/> </optional> <optional> <ref name="mtable.attributes.columnalign"/> </optional> <optional> <ref name="mtable.attributes.groupalign"/> </optional> <optional> <ref name="mtable.attributes.alignmentscope"/> </optional> <optional> <ref name="mtable.attributes.columnwidth"/> </optional> <optional> <ref name="mtable.attributes.width"/> </optional> <optional> <ref name="mtable.attributes.rowspacing"/> </optional> <optional> <ref name="mtable.attributes.columnspacing"/> </optional> <optional> <ref name="mtable.attributes.rowlines"/> </optional> <optional> <ref name="mtable.attributes.columnlines"/> </optional> <optional> <ref name="mtable.attributes.frame"/> </optional> <optional> <ref name="mtable.attributes.framespacing"/> </optional> <optional> <ref name="mtable.attributes.equalrows"/> </optional> <optional> <ref name="mtable.attributes.equalcolumns"/> </optional> <optional> <ref name="mtable.attributes.displaystyle"/> </optional> <optional> <ref name="mtable.attributes.side"/> </optional> <optional> <ref name="mtable.attributes.minlabelspacing"/> </optional> <zeroOrMore> <choice> <ref name="mtr"/> <ref name="mlabeledtr"/> </choice> </zeroOrMore> </element> </define> <define name="mtable.attributes.align"> <attribute name="align" ns=""> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">\s*(top|bottom|center|baseline|axis)\s*[0-9]*</param> </data> </attribute> </define> <define name="mtable.attributes.rowalign"> <attribute name="rowalign" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">top</value> <value type="token" datatypeLibrary="">bottom</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">baseline</value> <value type="token" datatypeLibrary="">axis</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mtable.attributes.columnalign"> <attribute name="columnalign" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mtable.attributes.groupalign"> <attribute name="groupalign" ns=""> <ref name="group-alignment-list-list"/> </attribute> </define> <define name="mtable.attributes.alignmentscope"> <attribute name="alignmentscope" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mtable.attributes.columnwidth"> <attribute name="columnwidth" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">auto</value> <ref name="length"/> <value type="token" datatypeLibrary="">fit</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mtable.attributes.width"> <attribute name="width" ns=""> <choice> <value type="token" datatypeLibrary="">auto</value> <ref name="length"/> </choice> </attribute> </define> <define name="mtable.attributes.rowspacing"> <attribute name="rowspacing" ns=""> <list> <oneOrMore> <ref name="length"/> </oneOrMore> </list> </attribute> </define> <define name="mtable.attributes.columnspacing"> <attribute name="columnspacing" ns=""> <list> <oneOrMore> <ref name="length"/> </oneOrMore> </list> </attribute> </define> <define name="mtable.attributes.rowlines"> <attribute name="rowlines" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">solid</value> <value type="token" datatypeLibrary="">dashed</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mtable.attributes.columnlines"> <attribute name="columnlines" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">solid</value> <value type="token" datatypeLibrary="">dashed</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mtable.attributes.frame"> <attribute name="frame" ns=""> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">solid</value> <value type="token" datatypeLibrary="">dashed</value> </choice> </attribute> </define> <define name="mtable.attributes.framespacing"> <attribute name="framespacing" ns=""> <list> <ref name="length"/> <ref name="length"/> </list> </attribute> </define> <define name="mtable.attributes.equalrows"> <attribute name="equalrows" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mtable.attributes.equalcolumns"> <attribute name="equalcolumns" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mtable.attributes.displaystyle"> <attribute name="displaystyle" ns=""> <choice> <value type="token" datatypeLibrary="">true</value> <value type="token" datatypeLibrary="">false</value> </choice> </attribute> </define> <define name="mtable.attributes.side"> <attribute name="side" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">leftoverlap</value> <value type="token" datatypeLibrary="">rightoverlap</value> </choice> </attribute> </define> <define name="mtable.attributes.minlabelspacing"> <attribute name="minlabelspacing" ns=""> <ref name="length"/> </attribute> </define> <define name="mlabeledtr"> <element name="mlabeledtr" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mtr.attributes.rowalign"/> </optional> <optional> <ref name="mtr.attributes.columnalign"/> </optional> <optional> <ref name="mtr.attributes.groupalign"/> </optional> <oneOrMore> <ref name="mtd"/> </oneOrMore> </element> </define> <define name="mtr"> <element name="mtr" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mtr.attributes.rowalign"/> </optional> <optional> <ref name="mtr.attributes.columnalign"/> </optional> <optional> <ref name="mtr.attributes.groupalign"/> </optional> <zeroOrMore> <ref name="mtd"/> </zeroOrMore> </element> </define> <define name="mtr.attributes.rowalign"> <attribute name="rowalign" ns=""> <choice> <value type="token" datatypeLibrary="">top</value> <value type="token" datatypeLibrary="">bottom</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">baseline</value> <value type="token" datatypeLibrary="">axis</value> </choice> </attribute> </define> <define name="mtr.attributes.columnalign"> <attribute name="columnalign" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mtr.attributes.groupalign"> <attribute name="groupalign" ns=""> <ref name="group-alignment-list-list"/> </attribute> </define> <define name="mtd"> <element name="mtd" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mtd.attributes.rowspan"/> </optional> <optional> <ref name="mtd.attributes.columnspan"/> </optional> <optional> <ref name="mtd.attributes.rowalign"/> </optional> <optional> <ref name="mtd.attributes.columnalign"/> </optional> <optional> <ref name="mtd.attributes.groupalign"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </zeroOrMore> </element> </define> <define name="mtd.attributes.rowspan"> <attribute name="rowspan" ns=""> <ref name="positive-integer"/> </attribute> </define> <define name="mtd.attributes.columnspan"> <attribute name="columnspan" ns=""> <ref name="positive-integer"/> </attribute> </define> <define name="mtd.attributes.rowalign"> <attribute name="rowalign" ns=""> <choice> <value type="token" datatypeLibrary="">top</value> <value type="token" datatypeLibrary="">bottom</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">baseline</value> <value type="token" datatypeLibrary="">axis</value> </choice> </attribute> </define> <define name="mtd.attributes.columnalign"> <attribute name="columnalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> </choice> </attribute> </define> <define name="mtd.attributes.groupalign"> <attribute name="groupalign" ns=""> <list> <oneOrMore> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">decimalpoint</value> </choice> </oneOrMore> </list> </attribute> </define> <define name="mstack"> <element name="mstack" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mstack.attributes.align"/> </optional> <optional> <ref name="mstack.attributes.stackalign"/> </optional> <optional> <ref name="mstack.attributes.charalign"/> </optional> <optional> <ref name="mstack.attributes.charspacing"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="mscarries"/> <ref name="msline"/> <ref name="msrow"/> <ref name="msgroup"/> </choice> </zeroOrMore> </element> </define> <define name="mstack.attributes.align"> <attribute name="align" ns=""> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">\s*(top|bottom|center|baseline|axis)\s*[0-9]*</param> </data> </attribute> </define> <define name="mstack.attributes.stackalign"> <attribute name="stackalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> <value type="token" datatypeLibrary="">decimalpoint</value> </choice> </attribute> </define> <define name="mstack.attributes.charalign"> <attribute name="charalign" ns=""> <choice> <value type="token" datatypeLibrary="">left</value> <value type="token" datatypeLibrary="">center</value> <value type="token" datatypeLibrary="">right</value> </choice> </attribute> </define> <define name="mstack.attributes.charspacing"> <attribute name="charspacing" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">loose</value> <value type="token" datatypeLibrary="">medium</value> <value type="token" datatypeLibrary="">tight</value> </choice> </attribute> </define> <define name="mlongdiv"> <element name="mlongdiv" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="msgroup.attributes.position"/> </optional> <optional> <ref name="msgroup.attributes.shift"/> </optional> <optional> <ref name="mlongdiv.attributes.longdivstyle"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="mscarries"/> <ref name="msline"/> <ref name="msrow"/> <ref name="msgroup"/> </choice> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="mscarries"/> <ref name="msline"/> <ref name="msrow"/> <ref name="msgroup"/> </choice> <oneOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="mscarries"/> <ref name="msline"/> <ref name="msrow"/> <ref name="msgroup"/> </choice> </oneOrMore> </element> </define> <define name="mlongdiv.attributes.longdivstyle"> <attribute name="longdivstyle" ns=""> <choice> <value type="token" datatypeLibrary="">lefttop</value> <value type="token" datatypeLibrary="">stackedrightright</value> <value type="token" datatypeLibrary="">mediumstackedrightright</value> <value type="token" datatypeLibrary="">shortstackedrightright</value> <value type="token" datatypeLibrary="">righttop</value> <value type="token" datatypeLibrary="">left/\right</value> <value type="token" datatypeLibrary="">left)(right</value> <value type="token" datatypeLibrary="">:right=right</value> <value type="token" datatypeLibrary="">stackedleftleft</value> <value type="token" datatypeLibrary="">stackedleftlinetop</value> </choice> </attribute> </define> <define name="msgroup"> <element name="msgroup" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="msgroup.attributes.position"/> </optional> <optional> <ref name="msgroup.attributes.shift"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="mscarries"/> <ref name="msline"/> <ref name="msrow"/> <ref name="msgroup"/> </choice> </zeroOrMore> </element> </define> <define name="msgroup.attributes.position"> <attribute name="position" ns=""> <ref name="integer"/> </attribute> </define> <define name="msgroup.attributes.shift"> <attribute name="shift" ns=""> <ref name="integer"/> </attribute> </define> <define name="msrow"> <element name="msrow" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="msrow.attributes.position"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="none"/> </choice> </zeroOrMore> </element> </define> <define name="msrow.attributes.position"> <attribute name="position" ns=""> <ref name="integer"/> </attribute> </define> <define name="mscarries"> <element name="mscarries" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mscarries.attributes.position"/> </optional> <optional> <ref name="mscarries.attributes.location"/> </optional> <optional> <ref name="mscarries.attributes.crossout"/> </optional> <optional> <ref name="mscarries.attributes.scriptsizemultiplier"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="none"/> <ref name="mscarry"/> </choice> </zeroOrMore> </element> </define> <define name="mscarries.attributes.position"> <attribute name="position" ns=""> <ref name="integer"/> </attribute> </define> <define name="mscarries.attributes.location"> <attribute name="location" ns=""> <choice> <value type="token" datatypeLibrary="">w</value> <value type="token" datatypeLibrary="">nw</value> <value type="token" datatypeLibrary="">n</value> <value type="token" datatypeLibrary="">ne</value> <value type="token" datatypeLibrary="">e</value> <value type="token" datatypeLibrary="">se</value> <value type="token" datatypeLibrary="">s</value> <value type="token" datatypeLibrary="">sw</value> </choice> </attribute> </define> <define name="mscarries.attributes.crossout"> <attribute name="crossout" ns=""> <list> <zeroOrMore> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">updiagonalstrike</value> <value type="token" datatypeLibrary="">downdiagonalstrike</value> <value type="token" datatypeLibrary="">verticalstrike</value> <value type="token" datatypeLibrary="">horizontalstrike</value> </choice> </zeroOrMore> </list> </attribute> </define> <define name="mscarries.attributes.scriptsizemultiplier"> <attribute name="scriptsizemultiplier" ns=""> <ref name="number"/> </attribute> </define> <define name="mscarry"> <element name="mscarry" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mscarry.attributes.location"/> </optional> <optional> <ref name="mscarry.attributes.crossout"/> </optional> <zeroOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> <ref name="none"/> </choice> </zeroOrMore> </element> </define> <define name="mscarry.attributes.location"> <attribute name="location" ns=""> <choice> <value type="token" datatypeLibrary="">w</value> <value type="token" datatypeLibrary="">nw</value> <value type="token" datatypeLibrary="">n</value> <value type="token" datatypeLibrary="">ne</value> <value type="token" datatypeLibrary="">e</value> <value type="token" datatypeLibrary="">se</value> <value type="token" datatypeLibrary="">s</value> <value type="token" datatypeLibrary="">sw</value> </choice> </attribute> </define> <define name="mscarry.attributes.crossout"> <attribute name="crossout" ns=""> <list> <zeroOrMore> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">updiagonalstrike</value> <value type="token" datatypeLibrary="">downdiagonalstrike</value> <value type="token" datatypeLibrary="">verticalstrike</value> <value type="token" datatypeLibrary="">horizontalstrike</value> </choice> </zeroOrMore> </list> </attribute> </define> <define name="maction"> <element name="maction" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="maction.attributes.actiontype"/> </optional> <optional> <ref name="maction.attributes.selection"/> </optional> <oneOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </oneOrMore> </element> </define> <define name="maction.attributes.actiontype"> <attribute name="actiontype" ns=""/> </define> <define name="maction.attributes.selection"> <attribute name="selection" ns=""> <ref name="positive-integer"/> </attribute> </define> <define name="math"> <element name="math" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="CommonPresAtt.mathcolor"/> </optional> <optional> <ref name="CommonPresAtt.mathbackground"/> </optional> <optional> <ref name="mstyle.specificattributes.scriptlevel"/> </optional> <optional> <ref name="mstyle.specificattributes.displaystyle"/> </optional> <optional> <ref name="mstyle.specificattributes.scriptsizemultiplier"/> </optional> <optional> <ref name="mstyle.specificattributes.scriptminsize"/> </optional> <optional> <ref name="mstyle.specificattributes.infixlinebreakstyle"/> </optional> <optional> <ref name="mstyle.specificattributes.decimalpoint"/> </optional> <optional> <ref name="mstyle.generalattributes.accent"/> </optional> <optional> <ref name="mstyle.generalattributes.accentunder"/> </optional> <optional> <ref name="mstyle.generalattributes.align"/> </optional> <optional> <ref name="mstyle.generalattributes.alignmentscope"/> </optional> <optional> <ref name="mstyle.generalattributes.bevelled"/> </optional> <optional> <ref name="mstyle.generalattributes.charalign"/> </optional> <optional> <ref name="mstyle.generalattributes.charspacing"/> </optional> <optional> <ref name="mstyle.generalattributes.close"/> </optional> <optional> <ref name="mstyle.generalattributes.columnalign"/> </optional> <optional> <ref name="mstyle.generalattributes.columnlines"/> </optional> <optional> <ref name="mstyle.generalattributes.columnspacing"/> </optional> <optional> <ref name="mstyle.generalattributes.columnspan"/> </optional> <optional> <ref name="mstyle.generalattributes.columnwidth"/> </optional> <optional> <ref name="mstyle.generalattributes.crossout"/> </optional> <optional> <ref name="mstyle.generalattributes.denomalign"/> </optional> <optional> <ref name="mstyle.generalattributes.depth"/> </optional> <optional> <ref name="mstyle.generalattributes.dir"/> </optional> <optional> <ref name="mstyle.generalattributes.edge"/> </optional> <optional> <ref name="mstyle.generalattributes.equalcolumns"/> </optional> <optional> <ref name="mstyle.generalattributes.equalrows"/> </optional> <optional> <ref name="mstyle.generalattributes.fence"/> </optional> <optional> <ref name="mstyle.generalattributes.form"/> </optional> <optional> <ref name="mstyle.generalattributes.frame"/> </optional> <optional> <ref name="mstyle.generalattributes.framespacing"/> </optional> <optional> <ref name="mstyle.generalattributes.groupalign"/> </optional> <optional> <ref name="mstyle.generalattributes.height"/> </optional> <optional> <ref name="mstyle.generalattributes.indentalign"/> </optional> <optional> <ref name="mstyle.generalattributes.indentalignfirst"/> </optional> <optional> <ref name="mstyle.generalattributes.indentalignlast"/> </optional> <optional> <ref name="mstyle.generalattributes.indentshift"/> </optional> <optional> <ref name="mstyle.generalattributes.indentshiftfirst"/> </optional> <optional> <ref name="mstyle.generalattributes.indentshiftlast"/> </optional> <optional> <ref name="mstyle.generalattributes.indenttarget"/> </optional> <optional> <ref name="mstyle.generalattributes.largeop"/> </optional> <optional> <ref name="mstyle.generalattributes.leftoverhang"/> </optional> <optional> <ref name="mstyle.generalattributes.length"/> </optional> <optional> <ref name="mstyle.generalattributes.linebreak"/> </optional> <optional> <ref name="mstyle.generalattributes.linebreakmultchar"/> </optional> <optional> <ref name="mstyle.generalattributes.linebreakstyle"/> </optional> <optional> <ref name="mstyle.generalattributes.lineleading"/> </optional> <optional> <ref name="mstyle.generalattributes.linethickness"/> </optional> <optional> <ref name="mstyle.generalattributes.location"/> </optional> <optional> <ref name="mstyle.generalattributes.longdivstyle"/> </optional> <optional> <ref name="mstyle.generalattributes.lquote"/> </optional> <optional> <ref name="mstyle.generalattributes.lspace"/> </optional> <optional> <ref name="mstyle.generalattributes.mathsize"/> </optional> <optional> <ref name="mstyle.generalattributes.mathvariant"/> </optional> <optional> <ref name="mstyle.generalattributes.maxsize"/> </optional> <optional> <ref name="mstyle.generalattributes.minlabelspacing"/> </optional> <optional> <ref name="mstyle.generalattributes.minsize"/> </optional> <optional> <ref name="mstyle.generalattributes.movablelimits"/> </optional> <optional> <ref name="mstyle.generalattributes.mslinethickness"/> </optional> <optional> <ref name="mstyle.generalattributes.notation"/> </optional> <optional> <ref name="mstyle.generalattributes.numalign"/> </optional> <optional> <ref name="mstyle.generalattributes.open"/> </optional> <optional> <ref name="mstyle.generalattributes.position"/> </optional> <optional> <ref name="mstyle.generalattributes.rightoverhang"/> </optional> <optional> <ref name="mstyle.generalattributes.rowalign"/> </optional> <optional> <ref name="mstyle.generalattributes.rowlines"/> </optional> <optional> <ref name="mstyle.generalattributes.rowspacing"/> </optional> <optional> <ref name="mstyle.generalattributes.rowspan"/> </optional> <optional> <ref name="mstyle.generalattributes.rquote"/> </optional> <optional> <ref name="mstyle.generalattributes.rspace"/> </optional> <optional> <ref name="mstyle.generalattributes.selection"/> </optional> <optional> <ref name="mstyle.generalattributes.separator"/> </optional> <optional> <ref name="mstyle.generalattributes.separators"/> </optional> <optional> <ref name="mstyle.generalattributes.shift"/> </optional> <optional> <ref name="mstyle.generalattributes.side"/> </optional> <optional> <ref name="mstyle.generalattributes.stackalign"/> </optional> <optional> <ref name="mstyle.generalattributes.stretchy"/> </optional> <optional> <ref name="mstyle.generalattributes.subscriptshift"/> </optional> <optional> <ref name="mstyle.generalattributes.superscriptshift"/> </optional> <optional> <ref name="mstyle.generalattributes.symmetric"/> </optional> <optional> <ref name="mstyle.generalattributes.valign"/> </optional> <optional> <ref name="mstyle.generalattributes.width"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="math.attributes.display"/> </optional> <optional> <ref name="math.attributes.maxwidth"/> </optional> <optional> <ref name="math.attributes.overflow"/> </optional> <optional> <ref name="math.attributes.altimg"/> </optional> <optional> <ref name="math.attributes.altimg-width"/> </optional> <optional> <ref name="math.attributes.altimg-height"/> </optional> <optional> <ref name="math.attributes.altimg-valign"/> </optional> <optional> <ref name="math.attributes.alttext"/> </optional> <optional> <ref name="math.attributes.cdgroup"/> </optional> <optional> <ref name="math.deprecatedattributes.mode"/> </optional> <optional> <ref name="math.deprecatedattributes.macros"/> </optional> <oneOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </oneOrMore> </element> </define> <define name="math.deprecatedattributes.mode"> <attribute name="mode" ns=""> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="math.deprecatedattributes.macros"> <attribute name="macros" ns=""> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="name"> <attribute name="name" ns=""> <data type="NCName" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="cd"> <attribute name="cd" ns=""> <data type="NCName" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="src"> <optional> <attribute name="src" ns=""> <data type="anyURI" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </optional> </define> <define name="annotation"> <element name="annotation" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="cd"/> </optional> <optional> <ref name="name"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="src"/> </optional> <text/> </element> </define> <define name="annotation-xml"> <element name="annotation-xml" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="cd"/> </optional> <optional> <ref name="name"/> </optional> <optional> <ref name="annotation-xml.specialized.attlist.definitionURL"/> </optional> <choice> <group> <ref name="annotation-xml.specialized.choice.encoding"/> <choice> <ref name="src"/> <oneOrMore> <choice> <ref name="semantics-contexp"/> <ref name="cn"/> <ref name="ci"/> <ref name="csymbol"/> <ref name="apply"/> <ref name="bind"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="share"/> <ref name="cerror"/> <ref name="cbytes"/> <ref name="cs"/> <ref name="piecewise"/> <empty/> <ref name="interval"/> <ref name="inverse"/> <ref name="ident"/> <ref name="domain"/> <ref name="codomain"/> <ref name="image"/> <ref name="ln"/> <ref name="log"/> <ref name="moment"/> <ref name="lambda"/> <ref name="compose"/> <ref name="quotient"/> <ref name="divide"/> <ref name="minus"/> <ref name="power"/> <ref name="rem"/> <ref name="root"/> <ref name="factorial"/> <ref name="minus"/> <ref name="root"/> <ref name="abs"/> <ref name="conjugate"/> <ref name="arg"/> <ref name="real"/> <ref name="imaginary"/> <ref name="floor"/> <ref name="ceiling"/> <ref name="exp"/> <ref name="max"/> <ref name="min"/> <ref name="plus"/> <ref name="times"/> <ref name="gcd"/> <ref name="lcm"/> <ref name="and"/> <ref name="or"/> <ref name="xor"/> <ref name="not"/> <ref name="implies"/> <ref name="equivalent"/> <ref name="forall"/> <ref name="exists"/> <ref name="eq"/> <ref name="gt"/> <ref name="lt"/> <ref name="geq"/> <ref name="leq"/> <ref name="neq"/> <ref name="approx"/> <ref name="factorof"/> <ref name="tendsto"/> <ref name="int"/> <ref name="diff"/> <ref name="partialdiff"/> <ref name="divergence"/> <ref name="grad"/> <ref name="curl"/> <ref name="laplacian"/> <ref name="set"/> <ref name="list"/> <ref name="union"/> <ref name="intersect"/> <ref name="cartesianproduct"/> <ref name="in"/> <ref name="notin"/> <ref name="notsubset"/> <ref name="notprsubset"/> <ref name="setdiff"/> <ref name="subset"/> <ref name="prsubset"/> <ref name="card"/> <ref name="sum"/> <ref name="product"/> <ref name="limit"/> <ref name="sin"/> <ref name="cos"/> <ref name="tan"/> <ref name="sec"/> <ref name="csc"/> <ref name="cot"/> <ref name="sinh"/> <ref name="cosh"/> <ref name="tanh"/> <ref name="sech"/> <ref name="csch"/> <ref name="coth"/> <ref name="arcsin"/> <ref name="arccos"/> <ref name="arctan"/> <ref name="arccosh"/> <ref name="arccot"/> <ref name="arccoth"/> <ref name="arccsc"/> <ref name="arccsch"/> <ref name="arcsec"/> <ref name="arcsech"/> <ref name="arcsinh"/> <ref name="arctanh"/> <ref name="mean"/> <ref name="sdev"/> <ref name="variance"/> <ref name="median"/> <ref name="mode"/> <ref name="vector"/> <ref name="matrix"/> <ref name="matrixrow"/> <ref name="determinant"/> <ref name="transpose"/> <ref name="selector"/> <ref name="vectorproduct"/> <ref name="scalarproduct"/> <ref name="outerproduct"/> <ref name="integers"/> <ref name="reals"/> <ref name="rationals"/> <ref name="naturalnumbers"/> <ref name="complexes"/> <ref name="primes"/> <ref name="emptyset"/> <ref name="exponentiale"/> <ref name="imaginaryi"/> <ref name="notanumber"/> <ref name="true"/> <ref name="false"/> <ref name="pi"/> <ref name="eulergamma"/> <ref name="infinity"/> </choice> </oneOrMore> </choice> </group> <group> <ref name="annotation-xml.specialized.choice.encoding_1"/> <choice> <ref name="src"/> <oneOrMore> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> </oneOrMore> </choice> </group> <group> <ref name="annotation-xml.specialized.choice.encoding_2"/> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="m:annotation-xml[@encoding='Z39.98-AI']"> <sch:assert test="not(descendant::m:*)">The annotation-xml element, when used with Z39.98-AI markup, must not contain any descendants in the MathML namespace. </sch:assert> </sch:rule> </group> </choice> </element> </define> <define name="DefEncAtt.encoding"> <attribute name="encoding" ns=""> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="DefEncAtt.definitionURL"> <attribute name="definitionURL" ns=""> <data type="anyURI" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="semantics"> <element name="semantics" ns="http://www.w3.org/1998/Math/MathML"> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="DefEncAtt.encoding"/> </optional> <optional> <ref name="DefEncAtt.definitionURL"/> </optional> <optional> <ref name="cd"/> </optional> <optional> <ref name="name"/> </optional> <choice> <ref name="mi"/> <ref name="mn"/> <ref name="mo"/> <ref name="mtext"/> <ref name="mspace"/> <ref name="ms"/> <ref name="maligngroup"/> <ref name="malignmark"/> <ref name="mrow"/> <ref name="mfrac"/> <ref name="msqrt"/> <ref name="mroot"/> <ref name="mstyle"/> <ref name="merror"/> <ref name="mpadded"/> <ref name="mphantom"/> <ref name="mfenced"/> <ref name="menclose"/> <ref name="msub"/> <ref name="msup"/> <ref name="msubsup"/> <ref name="munder"/> <ref name="mover"/> <ref name="munderover"/> <ref name="mmultiscripts"/> <ref name="mtable"/> <ref name="mstack"/> <ref name="mlongdiv"/> <ref name="maction"/> <ref name="semantics"/> </choice> <zeroOrMore> <choice> <ref name="annotation"/> <ref name="annotation-xml"/> </choice> </zeroOrMore> </element> </define> <define name="length"> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">\s*((-?[0-9]*(\.[0-9]*)?(e[mx]|in|cm|mm|p[xtc]|%)?)|(negative)?((very){0,2}thi(n|ck)|medium)mathspace)\s*</param> </data> </define> <define name="annotation-xml.specialized.attlist.definitionURL"> <attribute name="definitionURL" ns=""> <data type="anyURI" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="annotation-xml.specialized.choice.encoding"> <attribute name="encoding" ns=""> <choice> <value type="token" datatypeLibrary="">application/mathml-content+xml</value> <value type="token" datatypeLibrary="">MathML-Content</value> </choice> </attribute> </define> <define name="annotation-xml.specialized.choice.encoding_1"> <attribute name="encoding" ns=""> <choice> <value type="token" datatypeLibrary="">application/mathml-presentation+xml</value> <value type="token" datatypeLibrary="">MathML-Presentation</value> </choice> </attribute> </define> <define name="annotation-xml.specialized.choice.encoding_2"> <attribute name="encoding" ns=""> <value type="token" datatypeLibrary="">Z39.98-AI</value> </attribute> </define> <define name="z3998.select.phrase"> <element name="select" ns="http://www.daisy.org/ns/z3998/authoring/features/select/"> <a:documentation>Container for content selection declarations in a Phrase context. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <oneOrMore> <ref name="z3998.when.phrase"/> </oneOrMore> <ref name="z3998.otherwise.phrase"/> </element> </define> <define name="z3998.select.block"> <element name="select" ns="http://www.daisy.org/ns/z3998/authoring/features/select/"> <a:documentation>Container for content selection declarations in a Block context. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <oneOrMore> <ref name="z3998.when.block"/> </oneOrMore> <ref name="z3998.otherwise.block"/> </element> </define> <define name="z3998.when.phrase"> <element name="when" ns="http://www.daisy.org/ns/z3998/authoring/features/select/"> <a:documentation>Container for a content fragment, associated with a selection condition. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <ref name="z3998.expr.attrib"/> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </element> </define> <define name="z3998.when.block"> <element name="when" ns="http://www.daisy.org/ns/z3998/authoring/features/select/"> <a:documentation>Container for a content fragment, associated with a selection condition. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <ref name="z3998.expr.attrib"/> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </element> </define> <define name="z3998.otherwise.phrase"> <element name="otherwise" ns="http://www.daisy.org/ns/z3998/authoring/features/select/"> <a:documentation>Container for a content fragment to be selected if none of the preceding when.phrase conditions evaluated to true. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="sel:otherwise"> <sch:assert test="not(descendant::sel:select)">The sel:otherwise element must not have sel:select descendants. </sch:assert> </sch:rule> </element> </define> <define name="z3998.otherwise.block"> <element name="otherwise" ns="http://www.daisy.org/ns/z3998/authoring/features/select/"> <a:documentation>Container for a content fragment to be selected if none of the preceding when.block conditions evaluated to true. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <sch:rule context="sel:otherwise"> <sch:assert test="not(descendant::sel:select)">The sel:otherwise element must not have sel:select descendants. </sch:assert> </sch:rule> </element> </define> <define name="z3998.expr.attrib"> <attribute name="expr" ns=""> <a:documentation>The expr attribute contains a conditional expression. Refer to the Content Selection Feature for information on syntax and function set association. </a:documentation> <ref name="z3998.select.ConditionalExpression.datatype"/> </attribute> </define> <define name="z3998.select.ConditionalExpression.datatype"> <a:documentation>A conditional expression, as defined in Conditional Expression </a:documentation> <data type="string" datatypeLibrary=""/> </define> <define name="z3998.select.selid.attrib"> <attribute name="selid" ns="http://www.daisy.org/ns/z3998/authoring/features/select/"> <a:documentation>The selid attribute provides a mechanism for including ID values on elements that are repeated in more than one select condition. The selid allows a single NCNAME as its value. When processing a select, all selid attributes in the resulting output condition must be converted to xml:id attributes. </a:documentation> <ref name="NCName.datatype"/> </attribute> </define> <define name="xforms.Single.Node.Binding.attrib.model"> <attribute name="model" ns=""> <data type="IDREF" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.Single.Node.Binding.attrib.ref"> <attribute name="ref" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.Single.Node.Binding.attrib.bind"> <attribute name="bind" ns=""> <data type="IDREF" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.Nodeset.Binding.attrib.model"> <attribute name="model" ns=""> <data type="IDREF" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.Nodeset.Binding.attrib.nodeset"> <attribute name="nodeset" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.Nodeset.Binding.attrib.bind"> <attribute name="bind" ns=""> <data type="IDREF" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.model"> <element name="model" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="xforms.model.attrib.functions"/> </optional> <optional> <ref name="xforms.model.attrib.schema"/> </optional> <optional> <ref name="xforms.model.attrib.version"/> </optional> <interleave> <zeroOrMore> <ref name="xforms.instance"/> </zeroOrMore> <zeroOrMore> <ref name="xforms.submission"/> </zeroOrMore> <zeroOrMore> <ref name="xforms.bind"/> </zeroOrMore> </interleave> </element> </define> <define name="xforms.model.attrib.functions"> <attribute name="functions" ns=""> <list> <oneOrMore> <data type="QName" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </oneOrMore> </list> </attribute> </define> <define name="xforms.model.attrib.schema"> <attribute name="schema" ns=""> <list> <oneOrMore> <data type="anyURI" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </oneOrMore> </list> </attribute> </define> <define name="xforms.model.attrib.version"> <attribute name="version" ns=""> <list> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">[1-9]\d*\.\d+</param> </data> </list> </attribute> </define> <define name="xforms.instance"> <element name="instance" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="xforms.instance.attrib.src"/> </optional> <optional> <ref name="xforms.instance.attrib.resource"/> </optional> <ref name="z3998.forms.instance.content.temp"/> </element> </define> <define name="xforms.instance.attrib.src"> <attribute name="src" ns=""> <ref name="URI.datatype"/> </attribute> </define> <define name="xforms.instance.attrib.resource"> <attribute name="resource" ns=""> <ref name="URI.datatype"/> </attribute> </define> <define name="xforms.submission"> <element name="submission" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <choice> <ref name="xforms.submission.model.method_1"/> <ref name="xforms.submission.model.method"/> </choice> <choice> <ref name="xforms.submission.model.action"/> <ref name="xforms.submission.model.resource_1"/> <ref name="xforms.submission.model.resource"/> </choice> <zeroOrMore> <ref name="xforms.submission.model.header"/> </zeroOrMore> <optional> <ref name="xforms.submission.model.bind"/> </optional> <optional> <ref name="xforms.submission.model.ref"/> </optional> <optional> <ref name="xforms.submission.model.includenamespaceprefixes"/> </optional> <optional> <ref name="xforms.submission.model.indent"/> </optional> <optional> <ref name="xforms.submission.model.encoding"/> </optional> <optional> <ref name="xforms.submission.model.mode"/> </optional> <optional> <ref name="xforms.submission.model.omit-xml-declaration"/> </optional> <optional> <ref name="xforms.submission.model.mediatype"/> </optional> <optional> <ref name="xforms.submission.model.standalone"/> </optional> <optional> <ref name="xforms.submission.model.cdata-section-elements"/> </optional> <optional> <ref name="xforms.submission.model.replace"/> </optional> <optional> <ref name="xforms.submission.model.instance"/> </optional> <optional> <ref name="xforms.submission.model.relevant"/> </optional> <optional> <ref name="xforms.submission.model.separator"/> </optional> <optional> <ref name="xforms.submission.model.serialization"/> </optional> <optional> <ref name="xforms.submission.model.validate"/> </optional> <optional> <ref name="xforms.submission.model.version"/> </optional> <optional> <ref name="xforms.submission.model.targetref"/> </optional> </element> </define> <define name="xforms.submission.model.method"> <element name="method" ns="http://www.w3.org/2002/xforms/"> <ref name="XPathExpression"/> </element> </define> <define name="xforms.submission.model.resource.value"> <attribute name="value" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.submission.model.resource"> <element name="resource" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xforms.submission.model.resource.value"/> </optional> <ref name="XPathExpression"/> </element> </define> <define name="xforms.submission.model.header.name"> <element name="name" ns="http://www.w3.org/2002/xforms/"> <ref name="XPathExpression"/> </element> </define> <define name="xforms.submission.model.header.value"> <element name="value" ns="http://www.w3.org/2002/xforms/"> <ref name="XPathExpression"/> </element> </define> <define name="xforms.submission.model.header"> <element name="header" ns="http://www.w3.org/2002/xforms/"> <interleave> <ref name="xforms.submission.model.header.name"/> <ref name="xforms.submission.model.header.value"/> </interleave> </element> </define> <define name="xforms.submission.model.method_1"> <attribute name="method" ns=""> <choice> <ref name="QNameButNotNCName"/> <value type="token" datatypeLibrary="">post</value> <value type="token" datatypeLibrary="">put</value> <value type="token" datatypeLibrary="">get</value> <value type="token" datatypeLibrary="">delete</value> <value type="token" datatypeLibrary="">post</value> <value type="token" datatypeLibrary="">form-data-post</value> <value type="token" datatypeLibrary="">urlencoded-post</value> </choice> </attribute> </define> <define name="xforms.submission.model.action"> <attribute name="action" ns=""> <data type="anyURI" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.submission.model.resource_1"> <attribute name="resource" ns=""> <data type="anyURI" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.submission.model.bind"> <attribute name="bind" ns=""> <data type="IDREF" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.submission.model.ref"> <attribute name="ref" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.submission.model.includenamespaceprefixes"> <attribute name="includenamespaceprefixes" ns=""> <list> <choice> <data type="NCName" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> <value type="token" datatypeLibrary="">#default</value> </choice> </list> </attribute> </define> <define name="xforms.submission.model.indent"> <attribute name="indent" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.submission.model.encoding"> <attribute name="encoding" ns=""/> </define> <define name="xforms.submission.model.mode"> <attribute name="mode" ns=""> <choice> <value type="token" datatypeLibrary="">asynchronous</value> <value type="token" datatypeLibrary="">synchronous</value> </choice> </attribute> </define> <define name="xforms.submission.model.omit-xml-declaration"> <attribute name="omit-xml-declaration" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.submission.model.mediatype"> <attribute name="mediatype" ns=""/> </define> <define name="xforms.submission.model.standalone"> <attribute name="standalone" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.submission.model.cdata-section-elements"> <attribute name="cdata-section-elements" ns=""> <list> <oneOrMore> <data type="QName" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </oneOrMore> </list> </attribute> </define> <define name="xforms.submission.model.replace"> <attribute name="replace" ns=""> <choice> <ref name="QNameButNotNCName"/> <value type="token" datatypeLibrary="">all</value> <value type="token" datatypeLibrary="">instance</value> <value type="token" datatypeLibrary="">none</value> </choice> </attribute> </define> <define name="xforms.submission.model.instance"> <attribute name="instance" ns=""> <data type="IDREF" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.submission.model.relevant"> <attribute name="relevant" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.submission.model.separator"> <attribute name="separator" ns=""> <choice> <value type="token" datatypeLibrary="">;</value> <value type="token" datatypeLibrary="">&</value> </choice> </attribute> </define> <define name="xforms.submission.model.serialization"> <attribute name="serialization" ns=""> <choice> <value type="token" datatypeLibrary="">application/xml</value> <value type="token" datatypeLibrary="">application/x-www-form-urlencoded</value> <value type="token" datatypeLibrary="">multipart/related</value> <value type="token" datatypeLibrary="">multipart/form-data</value> <value type="token" datatypeLibrary="">none</value> </choice> </attribute> </define> <define name="xforms.submission.model.validate"> <attribute name="validate" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.submission.model.version"> <attribute name="version" ns=""> <data type="NMTOKEN" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.submission.model.targetref"> <attribute name="targetref" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.bind"> <element name="bind" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="xforms.bind.attrib.nodeset"/> </optional> <optional> <ref name="xforms.bind.attrib.calculate"/> </optional> <optional> <ref name="xforms.bind.attrib.type"/> </optional> <optional> <ref name="xforms.bind.attrib.required"/> </optional> <optional> <ref name="xforms.bind.attrib.constraint"/> </optional> <optional> <ref name="xforms.bind.attrib.relevant"/> </optional> <optional> <ref name="xforms.bind.attrib.readonly"/> </optional> <optional> <ref name="xforms.bind.attrib.p3ptype"/> </optional> <zeroOrMore> <ref name="xforms.bind"/> </zeroOrMore> </element> </define> <define name="xforms.bind.attrib.nodeset"> <attribute name="nodeset" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.bind.attrib.calculate"> <attribute name="calculate" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.bind.attrib.type"> <attribute name="type" ns=""> <data type="QName" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.bind.attrib.required"> <attribute name="required" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.bind.attrib.constraint"> <attribute name="constraint" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.bind.attrib.relevant"> <attribute name="relevant" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.bind.attrib.readonly"> <attribute name="readonly" ns=""> <ref name="XPathExpression"/> </attribute> </define> <define name="xforms.bind.attrib.p3ptype"> <attribute name="p3ptype" ns=""/> </define> <define name="UI.xforms.Common.attrib" combine="interleave"> <optional> <attribute name="appearance" ns=""> <choice> <data type="QName" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">[^:]+:[^:]+</param> </data> <value type="token" datatypeLibrary="">minimal</value> <value type="token" datatypeLibrary="">compact</value> <value type="token" datatypeLibrary="">full</value> </choice> </attribute> </optional> </define> <define name="xforms.label"> <element name="label" ns="http://www.w3.org/2002/xforms/"> <interleave> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <choice> <ref name="xforms.Linking.attrib.src"/> <group> <optional> <ref name="xforms.Single.Node.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.ref"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.bind"/> </optional> </group> <oneOrMore> <choice> <text/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> </choice> </oneOrMore> </choice> </interleave> </element> </define> <define name="xforms.choices"> <element name="choices" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="xforms.label"/> </optional> <oneOrMore> <choice> <ref name="xforms.choices"/> <ref name="xforms.item"/> <ref name="xforms.itemset"/> </choice> </oneOrMore> </element> </define> <define name="xforms.value"> <element name="value" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <group> <optional> <ref name="xforms.Single.Node.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.ref"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.bind"/> </optional> </group> </optional> <text/> </element> </define> <define name="xforms.item"> <element name="item" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <ref name="xforms.label"/> <ref name="xforms.value"/> </element> </define> <define name="xforms.itemset"> <element name="itemset" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="xforms.Nodeset.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Nodeset.Binding.attrib.nodeset"/> </optional> <optional> <ref name="xforms.Nodeset.Binding.attrib.bind"/> </optional> <ref name="xforms.label"/> <choice> <ref name="xforms.value"/> <ref name="xforms.copy"/> </choice> </element> </define> <define name="xforms.copy"> <element name="copy" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <group> <optional> <ref name="xforms.Single.Node.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.ref"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.bind"/> </optional> </group> </element> </define> <define name="xforms.input"> <element name="input" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <group> <optional> <ref name="xforms.Single.Node.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.ref"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.bind"/> </optional> </group> <optional> <ref name="xforms.input.attrib.inputmode"/> </optional> <ref name="UI.xforms.Common.attrib"/> <optional> <ref name="xforms.input.attrib.incremental"/> </optional> <ref name="xforms.label"/> </element> </define> <define name="xforms.input.attrib.inputmode"> <attribute name="inputmode" ns=""/> </define> <define name="xforms.input.attrib.incremental"> <attribute name="incremental" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.textarea"> <element name="textarea" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <group> <optional> <ref name="xforms.Single.Node.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.ref"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.bind"/> </optional> </group> <optional> <ref name="xforms.textarea.attrib.inputmode"/> </optional> <ref name="UI.xforms.Common.attrib"/> <optional> <ref name="xforms.textarea.attrib.incremental"/> </optional> <ref name="xforms.label"/> </element> </define> <define name="xforms.textarea.attrib.inputmode"> <attribute name="inputmode" ns=""/> </define> <define name="xforms.textarea.attrib.incremental"> <attribute name="incremental" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.secret"> <element name="secret" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <group> <optional> <ref name="xforms.Single.Node.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.ref"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.bind"/> </optional> </group> <optional> <ref name="xforms.secret.attrib.inputmode"/> </optional> <ref name="UI.xforms.Common.attrib"/> <optional> <ref name="xforms.secret.attrib.incremental"/> </optional> <ref name="xforms.label"/> </element> </define> <define name="xforms.secret.attrib.inputmode"> <attribute name="inputmode" ns=""/> </define> <define name="xforms.secret.attrib.incremental"> <attribute name="incremental" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.select1"> <element name="select1" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <group> <optional> <ref name="xforms.Single.Node.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.ref"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.bind"/> </optional> </group> <ref name="UI.xforms.Common.attrib"/> <optional> <ref name="xforms.select1.attrib.selection"/> </optional> <optional> <ref name="xforms.select1.attrib.incremental"/> </optional> <ref name="xforms.label"/> <oneOrMore> <choice> <ref name="xforms.item"/> <ref name="xforms.itemset"/> <ref name="xforms.choices"/> </choice> </oneOrMore> </element> </define> <define name="xforms.select1.attrib.selection"> <attribute name="selection" ns=""> <choice> <value type="token" datatypeLibrary="">open</value> <value type="token" datatypeLibrary="">closed</value> </choice> </attribute> </define> <define name="xforms.select1.attrib.incremental"> <attribute name="incremental" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.select"> <element name="select" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <group> <optional> <ref name="xforms.Single.Node.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.ref"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.bind"/> </optional> </group> <ref name="UI.xforms.Common.attrib"/> <optional> <ref name="xforms.select.attrib.selection"/> </optional> <optional> <ref name="xforms.select.attrib.incremental"/> </optional> <ref name="xforms.label"/> <oneOrMore> <choice> <ref name="xforms.item"/> <ref name="xforms.itemset"/> <ref name="xforms.choices"/> </choice> </oneOrMore> </element> </define> <define name="xforms.select.attrib.selection"> <attribute name="selection" ns=""> <choice> <value type="token" datatypeLibrary="">open</value> <value type="token" datatypeLibrary="">closed</value> </choice> </attribute> </define> <define name="xforms.select.attrib.incremental"> <attribute name="incremental" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.range"> <element name="range" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <group> <optional> <ref name="xforms.Single.Node.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.ref"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.bind"/> </optional> </group> <ref name="UI.xforms.Common.attrib"/> <optional> <ref name="xforms.range.attrib.start"/> </optional> <optional> <ref name="xforms.range.attrib.end"/> </optional> <optional> <ref name="xforms.range.attrib.step"/> </optional> <optional> <ref name="xforms.range.attrib.incremental"/> </optional> <ref name="xforms.label"/> </element> </define> <define name="xforms.range.attrib.start"> <attribute name="start" ns=""/> </define> <define name="xforms.range.attrib.end"> <attribute name="end" ns=""/> </define> <define name="xforms.range.attrib.step"> <attribute name="step" ns=""/> </define> <define name="xforms.range.attrib.incremental"> <attribute name="incremental" ns=""> <data type="boolean" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.repeat"> <element name="repeat" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="xforms.Nodeset.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Nodeset.Binding.attrib.nodeset"/> </optional> <optional> <ref name="xforms.Nodeset.Binding.attrib.bind"/> </optional> <ref name="UI.xforms.Common.attrib"/> <optional> <ref name="xforms.repeat.attrib.startindex"/> </optional> <optional> <ref name="xforms.repeat.attrib.number"/> </optional> <zeroOrMore> <choice> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <oneOrMore> <choice> <text/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> </choice> </oneOrMore> </choice> </zeroOrMore> </element> </define> <define name="xforms.repeat.attrib.startindex"> <attribute name="startindex" ns=""> <data type="positiveInteger" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.repeat.attrib.number"> <attribute name="number" ns=""> <data type="nonNegativeInteger" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="xforms.group"> <element name="group" ns="http://www.w3.org/2002/xforms/"> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <group> <optional> <ref name="xforms.Single.Node.Binding.attrib.model"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.ref"/> </optional> <optional> <ref name="xforms.Single.Node.Binding.attrib.bind"/> </optional> </group> </optional> <ref name="UI.xforms.Common.attrib"/> <optional> <ref name="xforms.label"/> </optional> <zeroOrMore> <choice> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <oneOrMore> <choice> <text/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> </choice> </oneOrMore> </choice> </zeroOrMore> </element> </define> <define name="QNameButNotNCName"> <data type="QName" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">[^:]+:[^:]+</param> </data> </define> <define name="XPathExpression"> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="xforms.anyElement.null"> <attribute ns=""> <anyName/> </attribute> </define> <define name="xforms.anyElement"> <element ns="http://www.w3.org/2002/xforms/"> <anyName/> <zeroOrMore> <choice> <ref name="xforms.anyElement.null"/> <text/> <ref name="xforms.anyElement"/> </choice> </zeroOrMore> </element> </define> <define name="xforms.anyXSDElement.null"> <attribute ns=""> <anyName/> </attribute> </define> <define name="xforms.anyXSDElement"> <element ns="http://www.w3.org/2002/xforms/"> <nsName ns="http://www.w3.org/2001/XMLSchema"/> <zeroOrMore> <choice> <ref name="xforms.anyXSDElement.null"/> <text/> <ref name="xforms.anyXSDElement"/> </choice> </zeroOrMore> </element> </define> <define name="z3998.forms.instance.content.temp.null"> <attribute ns=""> <nsName ns="http://www.daisy.org/ns/z3998/authoring/xforms/instance/"/> </attribute> </define> <define xmlns:x="http://www.w3.org/1999/xhtml" name="z3998.forms.instance.content.temp"> <element ns="http://www.w3.org/2002/xforms/"> <nsName ns="http://www.daisy.org/ns/z3998/authoring/xforms/instance/"/> <zeroOrMore> <ref name="z3998.forms.instance.content.temp.null"/> </zeroOrMore> <zeroOrMore> <choice> <ref name="z3998.forms.instance.content.temp"/> <text/> </choice> </zeroOrMore> </element> </define> <define name="z3998.rend.symbol.attrib"> <attribute name="symbol" ns="http://www.daisy.org/ns/z3998/authoring/features/rend/"> <a:documentation>The rend:symbol attribute specifies the textual symbol used to represent a context break in the source document. As an alternative to rend:symbol, the src attribute may be used to include an image symbol. Note that allowed media types in the src attribute are limited to the same set as the media types allowed on the object element. The rend:symbol and src attributes must not occur simultaneously on the same element. </a:documentation> <text/> </attribute> </define> <define name="z3998.rend.list.ordered.prefix.attrib"> <attribute name="prefix" ns="http://www.daisy.org/ns/z3998/authoring/features/rend/"> <a:documentation>The rend:prefix attribute specifies the symbol used as prefixes to the item children of an ordered list in the source document. The semantics of the allowed values of this attribute are defined by the CSS list-style-type property . The value specified in rend:prefix is inherited by any descendant lists, unless such descendant lists specify a rend:prefix attribute themselves. In terms of the CSS cascade , values provided here must be considered as of author origin. For more specialized symbols than the ones supported by the rend:prefix attribute on list, the rend:prefix attribute on item can be used. </a:documentation> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">decimal</value> <value type="token" datatypeLibrary="">decimal-leading-zero</value> <value type="token" datatypeLibrary="">lower-alpha</value> <value type="token" datatypeLibrary="">lower-greek</value> <value type="token" datatypeLibrary="">lower-latin</value> <value type="token" datatypeLibrary="">lower-roman</value> <value type="token" datatypeLibrary="">upper-alpha</value> <value type="token" datatypeLibrary="">upper-greek</value> <value type="token" datatypeLibrary="">upper-latin</value> <value type="token" datatypeLibrary="">upper-roman </value> </choice> </attribute> </define> <define name="z3998.rend.list.unordered.prefix.attrib"> <attribute name="prefix" ns="http://www.daisy.org/ns/z3998/authoring/features/rend/"> <a:documentation>The rend:prefix attribute specifies the symbol used as prefixes to the item children of an unordered list in the source document. The semantics of the allowed values of this attribute are defined by the CSS list-style-type property . The value specified in rend:prefix is inherited by any descendant lists, unless such descendant lists specify a rend:prefix attribute themselves. In terms of the CSS cascade , values provided here must be considered as of author origin. For more specialized symbols than the ones supported by the rend:prefix attribute on list, the rend:prefix attribute on item can be used. </a:documentation> <choice> <value type="token" datatypeLibrary="">none</value> <value type="token" datatypeLibrary="">box</value> <value type="token" datatypeLibrary="">check</value> <value type="token" datatypeLibrary="">circle</value> <value type="token" datatypeLibrary="">diamond</value> <value type="token" datatypeLibrary="">disc</value> <value type="token" datatypeLibrary="">hyphen</value> <value type="token" datatypeLibrary="">square</value> </choice> </attribute> </define> <define name="z3998.rend.list.item.prefix.attrib"> <attribute name="prefix" ns="http://www.daisy.org/ns/z3998/authoring/features/rend/"> <a:documentation>The rend:prefix attribute specifies the symbol used as a prefix to the content of the list item element. The occurrence of this attribute results in the prefix inheritance, as set by the prefix attribute on a list ancestor, ceases to be active, for this item, any following item siblings, and any child lists. To specify prefix symbols common to multiple list items, see rend.list.unordered.prefix and rend.list.ordered.prefix . </a:documentation> <ref name="NonEmptyString.datatype"/> </attribute> </define> <define name="z3998.rend.prefix.attrib"> <attribute name="prefix" ns="http://www.daisy.org/ns/z3998/authoring/features/rend/"> <a:documentation>The rend:prefix attribute specifies the characters or symbols that prefix an element. This variant is intended for use where the attribute and its value carry no special semantics or processing requirements, such as for values that prefix notes and annotations. </a:documentation> <ref name="NonEmptyString.datatype"/> </attribute> </define> <define name="z3998.rend.linebreak"> <element name="linebreak" ns="http://www.daisy.org/ns/z3998/authoring/features/rend/"> <a:documentation>The linebreak element represents a forced line ending. The ln element should be used whenever the text content represents discrete lines. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <optional> <ref name="ssml.ph.ns.attrib"/> <ref name="ssml.alphabet.ns.attrib"/> </optional> </element> </define> <define name="z3998.feature.description"> <element name="description" ns="http://www.daisy.org/ns/z3998/authoring/features/description/"> <a:documentation>The description element is the root container element for a description. It consists of an optional container element for metadata information (the head ) and a required container for the different description types and alternate image renditions (the body ). The language of the description can be specified by attaching an xml.lang attribute to the description element. If the description will be made available in a standalone context (i.e., in which its language cannot be inherited from a host content document), the language should always be specified. The DIAGRAM Description profile provides the ability to compile one or more description elements into a single document for distribution (e.g., to accompany an EPUB). When storing a description in a standalone context, the Description feature namespace http://www.daisy.org/ns/z3998/authoring/features/description/ should be declared on the description element using the xmlns namespace association mechanism defined in refXMLNamespaces . Although not required, the prefix d is recommended. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.feature.description.head"/> </optional> <ref name="z3998.feature.description.body"/> </element> </define> <define name="z3998.feature.description.head"> <element name="head" ns="http://www.daisy.org/ns/z3998/authoring/features/description/"> <a:documentation>The description head element contains meta information about the enclosing description element. The meta information in the description head element should not be treated as document content, but may be used for display and other purposes when rendering descriptions. Although all metadata is optional, descriptions should, at a minimum, include an identifier, the intended reader age and/or school grade level. See the DIAGRAM Descriptions Vocabulary for a set of predefined RDF properties. Properties from other RDF vocabularies can also be included, provided their prefix is declared. If age and grade-level metadata is omitted, the containing description should be assumed to be applicable to all readers. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <oneOrMore> <ref name="z3998.meta"/> </oneOrMore> </element> </define> <define name="z3998.feature.description.body"> <element name="body" ns="http://www.daisy.org/ns/z3998/authoring/features/description/"> <a:documentation>The description body element contains the accessible description forms that readers can select from depending on their needs. The description body must minimally contain the primary description of the associated content in a child longdesc element. The description body may also optionally compliment the primary description with a briefer summary and a simplified language representation . The body of the description can also be used to carry alternative images for readers unable to adequately interact with the source image. The tactile element can be used to include a tactile image and accompanying tour , and the simplifiedImage element can be used to include images more accessible to various reader needs. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <interleave> <optional> <ref name="z3998.feature.description.body.summary"/> </optional> <ref name="z3998.feature.description.body.longdesc"/> <optional> <ref name="z3998.feature.description.body.simplifiedLanguageDescription"/> </optional> <optional> <ref name="z3998.feature.description.body.tactile"/> </optional> <optional> <ref name="z3998.feature.description.body.simplifiedImage"/> </optional> <zeroOrMore> <ref name="z3998.annotation"/> </zeroOrMore> </interleave> </element> </define> <define name="z3998.feature.description.body.summary"> <element name="summary" ns="http://www.daisy.org/ns/z3998/authoring/features/description/"> <a:documentation>The summary element contains a shorter, more succinct version of the primary description in the longdesc element. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <choice> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> </choice> <sch:rule context="d:summary"> <sch:assert test="normalize-space(.) or *">The summary element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.feature.description.body.longdesc"> <element name="longdesc" ns="http://www.daisy.org/ns/z3998/authoring/features/description/"> <a:documentation>The longdesc element contains the primary description of the associated image, graphic or visually-oriented structure. The longdesc should contain a comprehensive explanation of the referenced item. See the summary element for information on how to include a compact description. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="d:longdesc"> <sch:assert test="normalize-space(.) or *">The longdesc element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.feature.description.body.simplifiedLanguageDescription"> <element name="simplifiedLanguageDescription" ns="http://www.daisy.org/ns/z3998/authoring/features/description/"> <a:documentation>The simplifiedLanguageDescription element contains a simplified language version of the primary description in the longdesc element. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> <sch:rule context="d:simplifiedLanguageDescription"> <sch:assert test="normalize-space(.) or *">The simplifiedLanguageDescription element must neither be empty nor contain only whitespace. </sch:assert> </sch:rule> </element> </define> <define name="z3998.feature.description.body.tactile"> <element name="tactile" ns="http://www.daisy.org/ns/z3998/authoring/features/description/"> <a:documentation>The tactile element contains an alternative tactile image. The element may contain one or more identical images for different production methods (e.g., one for swell paper production and another for stereolithograph printing). The tactile image may also include an explanatory tour . This specification does not place any restrictions on the format used to represent the tactile image, but images should be final-form representations for output rendering by end users. The role attribute should be used to differentiate the production use for each image. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <group> <oneOrMore> <ref name="z3998.object.block"/> </oneOrMore> <optional> <ref name="z3998.feature.description.tour"/> </optional> </group> </element> </define> <define name="z3998.feature.description.tour"> <element name="tour" ns="http://www.daisy.org/ns/z3998/authoring/features/description/"> <a:documentation>The tour element is associated with a tactile graphic or a simplified alternative image, and provides orientation. In addition, the tour can explain how to explore the tactile or simplified image. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <choice> <oneOrMore> <choice> <ref name="z3998.hd"/> <ref name="z3998.block"/> <ref name="z3998.p"/> <ref name="z3998.transition"/> <ref name="z3998.list"/> <ref name="z3998.table"/> <ref name="z3998.code.block"/> <ref name="z3998.quote.block"/> <ref name="z3998.citation.block"/> <ref name="z3998.object.block"/> <ref name="z3998.address"/> <ref name="z3998.note"/> <ref name="z3998.annotation"/> <ref name="z3998.aside"/> <ref name="z3998.caption"/> <ref name="z3998.verse"/> <ref name="z3998.description"/> <ref name="ssml.break"/> <ref name="math"/> <ref name="z3998.select.block"/> <ref name="xforms.group"/> <ref name="xforms.repeat"/> <ref name="z3998.feature.description"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> <oneOrMore> <choice> <text/> <ref name="z3998.object.text"/> <ref name="z3998.sub"/> <ref name="z3998.sup"/> <ref name="z3998.char"/> <ref name="z3998.span.text"/> <ref name="z3998.emph.text"/> <ref name="ssml.break"/> <ref name="ssml.phoneme.text"/> <ref name="ssml.prosody.text"/> <ref name="ssml.say-as.text"/> <ref name="ssml.sub.text"/> <ref name="ssml.token.text"/> <ref name="its-ruby"/> <ref name="z3998.span"/> <ref name="z3998.ref"/> <ref name="z3998.code.phrase"/> <ref name="z3998.object.phrase"/> <ref name="z3998.address.phrase"/> <ref name="z3998.noteref"/> <ref name="z3998.note.phrase"/> <ref name="z3998.annoref"/> <ref name="z3998.ln"/> <ref name="z3998.s"/> <ref name="z3998.w"/> <ref name="z3998.w"/> <ref name="z3998.expansion"/> <ref name="z3998.abbr"/> <ref name="z3998.emph"/> <ref name="z3998.time"/> <ref name="z3998.name"/> <ref name="z3998.definition"/> <ref name="z3998.term"/> <ref name="z3998.d"/> <ref name="z3998.num"/> <ref name="z3998.rend.linebreak"/> <ref name="z3998.quote.phrase"/> <ref name="z3998.citation"/> <ref name="z3998.annotation.phrase"/> <ref name="ssml.break"/> <ref name="ssml.phoneme"/> <ref name="ssml.prosody"/> <ref name="ssml.say-as"/> <ref name="ssml.sub"/> <ref name="ssml.token"/> <ref name="math"/> <ref name="z3998.select.phrase"/> <ref name="xforms.input"/> <ref name="xforms.textarea"/> <ref name="xforms.secret"/> <ref name="xforms.select1"/> <ref name="xforms.select"/> <ref name="xforms.range"/> <ref name="z3998.pagebreak"/> </choice> </oneOrMore> </choice> </element> </define> <define name="z3998.feature.description.body.simplifiedImage"> <element name="simplifiedImage" ns="http://www.daisy.org/ns/z3998/authoring/features/description/"> <a:documentation>The simplifiedImage element contains a simplified version of the source image. The element may contain one or more identical images in different formats. The simplified image may also include an explanatory tour . </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <group> <oneOrMore> <ref name="z3998.object.block"/> </oneOrMore> <optional> <ref name="z3998.feature.description.tour"/> </optional> </group> </element> </define> <define name="ID.datatype"> <a:documentation>An ID TokenizedType, as defined in section 3.3.1 of refXML . </a:documentation> <data type="ID" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="IDREF.datatype"> <a:documentation>An IDREF TokenizedType, as defined in section 3.3.1 of refXML . </a:documentation> <data type="IDREF" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="IDREFS.datatype"> <a:documentation>A space-separated list of IDREF TokenizedTypes. </a:documentation> <data type="IDREFS" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="NMTOKENS.datatype"> <a:documentation>A space-separated list of NMTOKEN.datatype TokenizedTypes. </a:documentation> <data type="NMTOKENS" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="NCName.datatype"> <a:documentation>An XML non-colonized Name, as defined in section 3.3.7 of refXML . </a:documentation> <data type="NCName" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="Character.datatype"> <a:documentation>A single character, as per section 2.2 of refXML . </a:documentation> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="length">1</param> </data> </define> <define name="NonEmptyString.datatype"> <a:documentation>Specifies a value that must contain at least one non-whitespace character after whitespace normalization rules have been applied to the attribute value, as expressed through the XSD normalizedString datatype. </a:documentation> <data type="token" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="minLength">1</param> </data> </define> <define name="TimeNoSeconds.datatype"> <a:documentation>A derivation of the XSD time datatype that only includes hour and minute specifications. The lexical expression is hh:mm. </a:documentation> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">\d\d:\d\d</param> </data> </define> <define name="NonNegativeInteger.datatype"> <a:documentation>A non-negative integer. </a:documentation> <data type="nonNegativeInteger" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">[0-9]+</param> </data> </define> <define name="PositiveInteger.datatype"> <a:documentation>A positive integer. </a:documentation> <data type="positiveInteger" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">[0-9]+</param> </data> </define> <define name="Integer.datatype"> <a:documentation>An integer. </a:documentation> <data type="integer" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="URI.datatype"> <a:documentation>A Uniform Resource Identifier Reference, as defined by the anyURI type in refXMLSchemaPart2 . </a:documentation> <data type="anyURI" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </define> <define name="MediaType.datatype"> <a:documentation>Media type, as per refRFC2046 . </a:documentation> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">[a-zA-Z0-9!#$&+\-\^_]+/[a-zA-Z0-9!#$&+\-\^_]+.*</param> </data> </define> <define name="CSS.TimeValue.datatype"> <a:documentation>A time value as defined in CSS 2.1 Times , e.g. 250ms, 3s. </a:documentation> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">([0-9]+\.)?[0-9]+m?s</param> </data> </define> <define name="CURIE.datatype"> <a:documentation>A single CURIE, as defined in refRDFa11 . </a:documentation> <data type="string" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <param name="pattern">(([\i-[:]][\c-[:]]*)?:)?[\i-[:]][\c-[:]]*</param> </data> </define> <define name="xforms.Linking.attrib.src"> <attribute name="src" ns=""> <ref name="URI.datatype"/> </attribute> </define> <define name="math.attributes.display"> <attribute name="display" ns=""> <choice> <value type="token" datatypeLibrary="">block</value> <value type="token" datatypeLibrary="">inline</value> </choice> </attribute> </define> <define name="math.attributes.maxwidth"> <attribute name="maxwidth" ns=""> <ref name="length"/> </attribute> </define> <define name="math.attributes.overflow"> <attribute name="overflow" ns=""> <choice> <value type="token" datatypeLibrary="">linebreak</value> <value type="token" datatypeLibrary="">scroll</value> <value type="token" datatypeLibrary="">elide</value> <value type="token" datatypeLibrary="">truncate</value> <value type="token" datatypeLibrary="">scale</value> </choice> </attribute> </define> <define name="math.attributes.altimg"> <attribute name="altimg" ns=""> <data type="anyURI" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="math.attributes.altimg-width"> <attribute name="altimg-width" ns=""> <ref name="length"/> </attribute> </define> <define name="math.attributes.altimg-height"> <attribute name="altimg-height" ns=""> <ref name="length"/> </attribute> </define> <define name="math.attributes.altimg-valign"> <attribute name="altimg-valign" ns=""> <choice> <ref name="length"/> <value type="token" datatypeLibrary="">top</value> <value type="token" datatypeLibrary="">middle</value> <value type="token" datatypeLibrary="">bottom</value> </choice> </attribute> </define> <define name="math.attributes.alttext"> <attribute name="alttext" ns=""/> </define> <define name="math.attributes.cdgroup"> <attribute name="cdgroup" ns=""> <data type="anyURI" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"/> </attribute> </define> <define name="z3998.table.tr.tr"> <element name="tr" ns="http://www.daisy.org/ns/z3998/authoring/"> <a:documentation>The tr element represents a single table row of data. </a:documentation> <optional> <ref name="xml.id.attrib"/> </optional> <optional> <ref name="xml.space.attrib"/> </optional> <optional> <ref name="xml.base.attrib"/> </optional> <optional> <ref name="z3998.class.attrib"/> </optional> <optional> <ref name="xml.lang.attrib"/> </optional> <optional> <ref name="its.dir.attrib"/> </optional> <optional> <ref name="its.translate.attrib"/> </optional> <optional> <ref name="rdfa.about.attrib"/> </optional> <optional> <ref name="rdfa.content.attrib"/> </optional> <optional> <ref name="rdfa.datatype.attrib"/> </optional> <optional> <ref name="rdfa.typeof.attrib"/> </optional> <optional> <ref name="rdfa.property.attrib"/> </optional> <optional> <ref name="rdfa.rel.attrib"/> </optional> <optional> <ref name="rdfa.resource.attrib"/> </optional> <optional> <ref name="rdfa.rev.attrib"/> </optional> <optional> <ref name="z3998.desc.attrib"/> </optional> <optional> <ref name="z3998.by.attrib"/> </optional> <optional> <ref name="z3998.select.selid.attrib"/> </optional> <optional> <ref name="z3998.role.attrib"/> </optional> <optional> <ref name="z3998.continuation.attrib"/> </optional> <optional> <ref name="ssml.onlangfailure.attrib"/> </optional> <interleave> <oneOrMore> <choice> <ref name="z3998.table.th"/> <ref name="z3998.table.td"/> </choice> </oneOrMore> <zeroOrMore> <ref name="z3998.pagebreak"/> </zeroOrMore> </interleave> </element> </define> </grammar>